Содержание:
.on( "загрузка" [, eventData ], handler )Возвращает: jQuery
Описание: Свяжите обработчик событий с событием "загрузка".
-
версия добавлена: 1.7.on( "загрузка" [, eventData ], handler )
Эта страница описывает событие load. Для метода .load(), удаленного в jQuery 3.0, см. .load().
Событие load отправляется элементу, когда он и все дочерние элементы полностью загружены. Это событие может быть отправлено любому элементу, связанному с URL: изображениям, скриптам, фреймам, iframes и объекту window.
Например, рассмотрим страницу с простым изображением:
<img src="book.png" alt="Book" id="book">
Обработчик событий может быть привязан к изображению:
$( "#book" ).on( "load", function() {
// Handler for `load` called.
} ); Как только изображение загрузится, обработчик вызывается.
В общем случае нет необходимости ожидать полной загрузки всех изображений. Если код может быть выполнен ранее, обычно лучше поместить его в обработчик, отправленный методу .ready().
Ограничения события load при работе с изображениями
Частая проблема, которую разработчики пытаются решить с помощью сокращения load, заключается в выполнении функции при полной загрузке изображения (или набора изображений). Существует несколько известных ограничений, которые следует отметить. Это:
- Он не работает последовательно и надёжно в разных браузерах
- Он не срабатывает правильно в WebKit, если атрибут src изображения установлен на то же значение, что и раньше
- Он не правильно распространяется вверх по дереву DOM
- Может перестать срабатывать для изображений, которые уже находятся в кэше браузера
Примечание: Методы .live() и .delegate() не могут использоваться для обнаружения события load iframe. Событие загрузки не распространяется правильно на родительский документ, а свойство event.target не установлено Firefox, IE9 или Chrome, что необходимо для делегирования событий.
Примеры:
Выполните функцию, когда страница полностью загрузится, включая графику.
$( window ).on( "load", function() {
// Run code
} ); Добавьте класс bigImg ко всем изображениям с высотой более 100 после загрузки каждого изображения.
$( "img.userIcon" ).on( "load", function() {
if ( $( this ).height() > 100) {
$( this ).addClass( "bigImg" );
}
} ); .trigger( "загрузка" )Возвращает: jQuery
Описание: Сгенерировать событие "загрузка" на элементе.
-
версия добавлена: 1.0.trigger( "загрузка" )
- "загрузка"Тип: строкаСтрока
"load".
-
См. описание для .on( "load", ... ).