![]() |
как сделать Мульти Прелоадер показывающий процент загрузки сразу нескольких файлов
Собственно столкнулся с проблемой как сделать прелоадер(класс) в который отправляешь скажемм массив с URL и он показывает их общий процесс загрузки например: загружен файл 11 из 45 , всего загружено 100500 киллобайт из ... текущий ход загрузки 23%... (не каждого отдельного файла а всей псчки)
заранее спс |
Если не ошибаюсь, то общий вес загружаемого содержимого будете знать только после запроса всех сразу загрузок, если, конечно, не рассматривать вариант, когда перед первой загрузкой будет получена инф. от какого то внешнего скрипта об общем весе. Например: перед началом загрузки будет выполнен запрос по которому будет передана инф. об общем объеме материала, который планируется загрузить, то же может быть передано через флешварс.
Так вот, если этот вариант не рассматривать, то надо сделать так, чтобы было создано одновременно столько лоадеров, сколько файлов планируется загрузить. Они - лоадеры, одновременно запрашивают сервер, и отчитываются какому то надклассу о том, в каком состоянии текущий запрос и какой объем файла вообще ожидается, надкласс всё это суммирует и передает туда, где формируется информационная строка. Как то так... |
ок, а переменную с общим весом вынести в отдельный класс ии пополнять от каждого лоадера?
а это не сильная нагрузка на машину? |
Вложений: 1
Не очень понял ваш вопрос. См. схему ниже. Надкласс SumLoaded навешивает слушателей на каждый из лоадеров, имеет методы те же что и обычный лоадер, только слушает не contentLoaderInfo, а сообщения из каждого лоадера, т.е. прогресс загрузки, общий объем, успешность или нет, и хранит информацию о кол-ве загрузчиков. По поводу нагрузки, зависит от кол-ва загрузчиков, если 45, например, то думаю, что загрузка не будет критической.
|
Делайте запрос php-скрипту, он пробегается по всем файлам и выдает вам общее количество байтов. Далее грузите файлы по одному, опираясь на общий объем. Также можно использовать LoaderMax или BulkLoader.
|
Браузер, бывает и сотню-полторы запросов держит и ничего.
Добавлено через 2 минуты Цитата:
Да, я бы тоже делал последовательную загрузку, а общий объем отдал бы во флешварс, например. Чтобы лишних запросов не плодить. |
Если файлы динамически меняются (кол-во или объем), то лучше через запрос.
Добавлено через 9 минут Можно xml со значениями url-size, суммируем по атрибуту size. |
Если не пользоваться РНР, то ещё можно XML-документ положить, а в нём указать нужные данные (и имена и объемы), а затем запрашивать, сначала его, а потом начинать загрузку контента.
|
Цитата:
|
Если вы прописываете имена загружаемых файлов прямо во флешке, то тогда сразу сформируйте и массив с объемами, или просто сум. объем. А потом грузите последовательно, вычитая по пути загруженное.
Добавлено через 3 минуты Цитата:
|
| Часовой пояс GMT +4, время: 15:07. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.