2011-01-25 4 views
4

Я пытаюсь выполнить параллельную предварительную загрузку изображений с использованием логики, реализованной на приведенной ниже ссылке.Предварительная загрузка огромного количества изображений

http://blog.lieldulev.com/2010/05/21/parallel-image-preloading-in-js/

У меня есть огромное количество изображений, в настоящее время 350+ изображения со средним размером 50KB файла каждый, что составляет в общей сложности 20Мб изображений им пытаются поджать. Мне нужны изображения для рисования холста.

Используя вышеприведенную логику параллельной загрузки, у меня возникают проблемы с браузером, ожидающим 2 минуты, чтобы завершить загрузку всей страницы. Иногда он останавливает скрипт.

Кстати, 20 МБ изображений в настоящее время является консервативным количеством изображений. некоторый набор изображений, которые мне нужны, чтобы предварительно загружать мой ход до 80 МБ!

Возможно ли даже предустановить такое количество изображений? И если мне нужно предварительно загружать, что лучший подход к моему требованию? Должен ли я делать непараллельный? Как насчет частичной предварительной загрузки?

Спасибо заранее Марв

ответ

4

Это идеальный UseCase для (Multipart XHR) запроса MXHR. Это означает, что servercript читает ваши файлы изображений, декодирует их как строку base64 и передает эти изображения в браузер. supplyJShelp использует эту технику, но в настоящее время только для javascript & файлов стилей. Во всяком случае, он спроектирован довольно модульно, поэтому не нужно расширять его функциональность для любого типа изображения, в котором вы нуждаетесь.

Если вы не чувствуете себя в настроении, сделайте это сами, не волнуйтесь - я обновлю скрипт для загрузки изображения в ближайшие несколько дней.

+0

Я буду ждать этого сценария :), но пока мне может понадобиться быстрое решение для моей проблемы. Спасибо – Marvzz

+1

Очень хороший источник. Если у вас есть время, вы могли бы дать пару баллов о том, что нужно изменить для работы в этом случае? – mVChr

+0

@mVChr: ​​в основном это копирование и вставка из существующего кода. Добавление нового прослушивателя типа MIME, скажем, 'image/png' и сделать что-то с каждым полученным изображением. Следите за обновлениями в ближайшее время. – jAndy

Смежные вопросы