Покинул форум
Сообщений всего: 882
Дата рег-ции: Март 2010
Помог: 1 раз(а)
После события ready я начинаю делать кучу различных проверок и, если проверки прошли успешно, ставлю обработчик для события window onload. Не может ли быть такого, что пока идут мои проверки уже сработает событие onload? Почему интересуюсь. Решил проверить просто в консоли, когда страница полностью загружена, вызовется ли моя ф-ци(ниже), если событие onload уже отработало:
Сначала будет выполнен тот alert, который находится за пределами window.onload
и не важно в какой части кода расположен этот алерт. Тоесть скрипт действует так: Он выполняет всё, кроме того, что находится в window.onload. После того, как весь скрипт будет выполнен, тогда он полезет в window.onload и начнет выполнять то, что описано там. Тоесть после полной загрузки всего, кроме window.onload - он выполняется в последнюю очередь.
Итог: если страница полностью и без ошибок была загружена - значит выполнился onload. Легко проверить вышеуказанным примером
LIME
Отправлено: 25 Июля, 2013 - 10:39:03
Активный участник
Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010
А можно ли проверить, что событие onload уже произошло?
установив обработчик в начале скрипта...в нем можно установить флаг например
Пара вопросов:
1) Допустим, сработало событие ready. В нем я устанавливаю обработчик на событие load. И в этот момент срабатывает событие load. Будет ли обработан мой обработчик на load?
2) Не может быть такого, что событие load сработает раньше события ready?
LIME
Отправлено: 25 Июля, 2013 - 10:48:05
Активный участник
Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010
Помог: 322 раз(а)
Pavelbeginner пишет:
сработало событие ready
значит документ загружен...поздняк обработчики на загрузку лепить
ready и означает что документ загружен и готов к работе с DOM
значит можно смело выполнять действие не назначая обработчик
DelphinPRO
Отправлено: 25 Июля, 2013 - 11:49:16
Активный участник
Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012
Помог: 353 раз(а)
Pavelbeginner пишет:
Не может быть такого, что событие load сработает раньше события ready?
Не может.
Но, теоретически, они могут отработать последовательно, и вы не успеете назначить обработчик onLoad внутри onReady.
Лучше все же их назначать по отдельности. А в вашем случае, возможно, пересмотреть логику работы скрипта.
----- Чем больше узнаю, тем больше я не знаю.
LIME
Отправлено: 25 Июля, 2013 - 11:57:15
Активный участник
Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.