| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > JavaScript: Общие вопросы > Узнать загружена ли картинка |
| Автор: Master 8.12.2004, 12:18 |
| Есть сайт, очень тяжелый. Грузится долго, но таково было желание заказщика. Так вот, теперь ему не нравица что сайт грузится кусками, т.е графика естественно порезана и загружается все по частям. Нак вот, можно ли отследить с помощью js загрузку всех картинок на сайте и только потом выдать это все на обозрение? если да, то у кого какое мнение на этот счет? thxxxx |
| Автор: GoodBoy 8.12.2004, 12:26 |
| Тогда, мне кажется, лучше сделать прелоад всех изображений, а потом сразу все их показать... |
| Автор: Sardar 8.12.2004, 12:31 |
| Посмотри здесь: http://forum.vingrad.ru/index.php?showtopic=30900 У всех элементов есть свойство readyState в ИЕ, у картинок есть свойство complete - во всех браузерах. |
| Автор: Се ля ви 8.12.2004, 13:21 | ||
| Впринципе, мне кажется, есть более простой вариант - можно всё скрыть, а на событии onload всё показать :-) Например так:
Единственное, если у тебя много счётчиов, то браузер будет ждать загрузки их всех и это будет долго. Тогда лучше отслеживать через complete. |
| Автор: Gold Dragon 8.12.2004, 13:27 |
| Как вариант. Есть такой классный параметр <lowsrc> у <img>, который может помочь. Смысл такой, в <lowsrc> цепляешь картинку очень плохинькую и очень лёгкую, а когда загрузится основная картинка, она сразу поменяется.. |
| Автор: Alx 8.12.2004, 13:48 |
| Red Dragon это по-моему не ИЕ... |
| Автор: Gold Dragon 8.12.2004, 14:46 |
| ALEXANDRO Я знаю что в спецификации HTML4 нет, но работает, только не помню где |
| Автор: Sardar 8.12.2004, 15:55 |
| Red Dragon если работает не везде, то смысла использовать нет. Можно как вариант придумать такую фичу самому, указать картинке src на маленький файл, пусть сразу грузится. Одновременно в скрипте создаются картинки с конечными изображениями. Как только картинка загрузится, она заменяет показанную ранее с низким разрешением. |
| Автор: Alx 8.12.2004, 17:13 | ||
| Sardar ой, да ну - это ненужный изврат! лучше уж так сделать:
|
| Автор: Sardar 8.12.2004, 17:42 | ||||
ALEXANDRO но у тебя не показываются картинки пока не загрузятся, разве это хорошо?
Вот код на скорую руку, не тестил, т.к. на работе под строгим взглядом босса... Под ИЕ5.0 будет ошибка, не существует функции splice у кастрированного массива. Здесь постил реализацию всех необходимых функций для массивов, в поиск с ключь. словом splice Юазем так:
|
| Автор: Aliance 8.12.2004, 20:19 |
| document.images можно юзать (IE only) Можно еще прогрес бар сделать, отобр. загрузку изобр. с кеша... код есть (реализация тут: http://aliance.hoha.ru/gallery.html ) |
| Автор: Gold Dragon 8.12.2004, 21:00 |
| Народ, я уже что-то подобное спрашивал, только найти не могу и код там рабочий, реализован на region68.russian.ru (раздел "о проекте"-"фото") |