Книга: Выразительный JavaScript
Событие загрузки
Событие загрузки
Когда заканчивается загрузка страницы, на объектах window
и body
запускается событие “load”
. Это часто используется для планирования инициализирующих действий, которым необходим полностью построенный документ. Вспомните, что содержимое тегов <script>
запускается сразу, как только тег встречается. Иногда это слишком рано – например, когда скрипту нужно что-то сделать с теми частями документа, которые находятся после тега <script>
.
У элементов типа картинок или тегов скрипта, которые загружают внешний файл, тоже есть событие “load”
, которое показывает, что файл загружен. Как и события фокуса, события загрузки не распространяются.
Когда страница закрывается или с неё уходят (например, по ссылке), запускается событие "beforeunload"
. Основная цель – защитить пользователя от случайной потери данных при закрытии документа. Предотвращение закрытия страницы не производится, как вы могли подумать, при помощи preventDefault
. Вместо этого используется возврат строки из обработчика. Строка будет использована в диалоге, который спрашивает пользователя, хочет ли он остаться на странице или покинуть её. Этот механизм гарантирует, что пользователь может покинуть страницу, даже если на ней работает зловредный скрипт, который бы хотел не отпускать пользователя, а вместо этого показывал бы ему мошенническую рекламу по снижению веса.
- Обработчики событий
- События и узлы DOM
- Объекты событий
- Распространение (propagation)
- Действия по умолчанию
- События от кнопок клавиатуры
- Кнопки мыши
- Движение мыши
- События прокрутки
- События, связанные с фокусом
- Событие загрузки
- График выполнения скрипта
- Установка таймеров
- Устранение помех (debouncing)
- Итог
- Упражнения
- 17.4. События загрузки документа
- Диспетчер настройки баланса и подсистема загрузки-выгрузки
- Листинг 15.11. Код для загрузки файла с Web-сервера
- Почему при включении клавиатура не работает, а после загрузки Windows все нормально?
- Каждый раз после загрузки Windows запускаются разные бесполезные приложения, а возле часов появляются лишние значки. Что...
- Я часто использую сетевую папку другого компьютера, как сделать, чтобы она не пропадала после перезагрузки?
- Если не включить внешний модем (COM-порт) до загрузки компьютера, то он не определяется системой. Это можно исправить?
- Удалил драйвер видеокарты, а потом еще и отключил устройство по умолчанию SVGA. После перезагрузки увидел черный экран… ...
- Восстановление системы через меню загрузки
- Во время загрузки появляется окно с запросом пароля, но раскладка используется русская, а у меня пароль на английском. К...
- Удаляю Windows Messenger из автозапуска, но после перезагрузки программа снова запускается. С другими приложениями таког...
- Проблема с переключением языков. Значок есть, но не работает. Если через Панель управления удалить все языки и тут же сн...