![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| Frantishik |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 24.12.2007 Репутация: нет Всего: нет |
Люди помогите......
Хочу сделать предзагрузку картинок на js, т.е что б тело сайта не отображалось до тех пор пока все картинки не загружены? вешал на onload функцию function preload(){ if (document.images) { preload_image_object = new Image(); // set image url image_url = new Array(); image_url[0] = "assets/images/adress.gif"; image_url[1] = "assets/images/logo.gif"; .............................................................. var i = 0; for(i=0; i<=10; i++) preload_image_object.src = image_url[i]; } } не подгружает... вешал скрипт в head...то же не помагает для чего надо? см.: http://frant.site88.net/ |
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 15 Всего: 315 |
мож их по массиву загрузить?
|
|||
|
||||
| Ghirik |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 919 Регистрация: 26.3.2007 Репутация: 13 Всего: 20 |
Где то здесь предлогали использовать динамическое создание объекта Image, примерно такое же название темы было. Т.е. через createElement и appendChild...
-------------------- Отдадим всё клиенту, пускай его машина мучается... |
|||
|
||||
| Frantishik |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 24.12.2007 Репутация: нет Всего: нет |
bars80080, пробовал ....
так как не работает упростил код.... я думаю идея такая,нужно в цикле проверять загруженность картинок. у обьекта image есть свойтсво complete. вот только при проверке ие ведёт себя непредсказуемо. нигде не могу найти чёткий пример с кроссбраузеностью... |
|||
|
||||
| Ghirik |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 919 Регистрация: 26.3.2007 Репутация: 13 Всего: 20 |
-------------------- Отдадим всё клиенту, пускай его машина мучается... |
|||
|
||||
| IDVsbruck |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 778 Регистрация: 12.11.2006 Репутация: 8 Всего: 22 |
Тут не должно быть проблем с кроссбраузерностью - все в пределах синтаксиса js, а событие onload у image работает давно и везде.
Можно пойти по следующему пути: 1. Грузим флеш, анимашку или просто картинку, типа "страница грузится". Вешаем на ее загрузку onload (для флешки/object тоже подойдет). 2. При вызове обработчика события загрузки запускаем таймер-интервал, к примеру, на 1 секунду и создаем все элементы createElement("img"). На каждый вешаем событие onload. 3. В функции, вызываемой таймером, проверяем (по выбору): а) флаг для каждой картинки; б) количество загруженных картинок. 4. При достижении финала загрузки картинок прекращаем вызов функции по таймеру и отображаем страницу (глобальный div, innerHTML для body, подгрузка AJAXом). Никаких проблем с разными браузерами быть не должно. |
|||
|
||||
| Ghirik |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 919 Регистрация: 26.3.2007 Репутация: 13 Всего: 20 |
IDVsbruck, и зачем это всё? таймеры и прочее... по моей ссылке, что, предзагрузка не происходит?
Добавлено через 22 секунды Или не кроссбраузерно? -------------------- Отдадим всё клиенту, пускай его машина мучается... |
|||
|
||||
| IDVsbruck |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 778 Регистрация: 12.11.2006 Репутация: 8 Всего: 22 |
Не, по твоей не происходит ... сначала вижу текст страницы, а потом начинают появляться картинки (я про ИЕ, т.к. в ФФ отображение идет одновременно).
Вот вопрос: "Хочу сделать предзагрузку картинок на js, т.е что б тело сайта не отображалось до тех пор пока все картинки не загружены?" Ответ: Надо сначала все загрузить, а потом все отобразить. Я предложил свой вариант. |
|||
|
||||
| Ghirik |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 919 Регистрация: 26.3.2007 Репутация: 13 Всего: 20 |
Дак, это разве проблема? Сложность как раз в контроле загрузки картинок, а показать и скрыть body, даже я смогу.
-------------------- Отдадим всё клиенту, пускай его машина мучается... |
|||
|
||||
| Frantishik |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 24.12.2007 Репутация: нет Всего: нет |
вот и я про это.....
нужно выловить событие когда загрузка картинки завершенна.... |
|||
|
||||
| Ghirik |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 919 Регистрация: 26.3.2007 Репутация: 13 Всего: 20 |
Frantishik, Вы скрипт смотрели? Там же всё ловится, во всех браузерах... показ картинок начинается только после полной загрузки всех. Добавлено @ 18:41 Вот всё что вам нужно.
И bars80080 об этом же говорил... Вы пробовали? Это сообщение отредактировал(а) Ghirik - 29.5.2008, 18:44 -------------------- Отдадим всё клиенту, пускай его машина мучается... |
||||
|
|||||
| Frantishik |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 24.12.2007 Репутация: нет Всего: нет |
Ghirik,
дело в том что просто при создании объекта картинка не грузится,
Зесь по сути то же самое что и у меня, только создаётся обьект Image....
|
||||
|
|||||
| Ghirik |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 919 Регистрация: 26.3.2007 Репутация: 13 Всего: 20 |
Ну... Ни чего себе! то же самое.... Если Вы говорите про это:
То это, конечно, не будет работать... буквы не правильные... -------------------- Отдадим всё клиенту, пускай его машина мучается... |
||||
|
|||||
| SelenIT |
|
|||
![]() баг форума ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3996 Регистрация: 17.10.2006 Где: Pale Blue Dot Репутация: 49 Всего: 401 |
Frantishik, у Вас создается один объект Image. И вы говорите ему буквально следующее:
А в коде Ghirikа свой объект Image создается для каждой картинки, которую нужно загрузить - и, если не произойдет ничего непредвиденного, дожидается ее загрузки. А на случай непредвиденности нужно предусмотреть таймер, чтобы, если картинка не загрузилась, скажем, через 15 сек. - отобразить вместо нее див с извинительным текстом. А то при такой постановке задачи одна недогрузившаяся картинка намертво заблокирует всю страницу... -------------------- Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму! |
|||
|
||||
| Ghirik |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 919 Регистрация: 26.3.2007 Репутация: 13 Всего: 20 |
Точно, я как то об этом не думал.... Опыту нету, однако.... -------------------- Отдадим всё клиенту, пускай его машина мучается... |
|||
|
||||
![]()
|
| Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |