Подтвердить что ты не робот

JQuery.ready() vs window.onload

Есть ли преимущества использования функции JQuery ready() над window.onload?

// Jquery ready
$(document).ready(function() {

});

// window.onload
window.onload = function () {

}
4b9b3361

Ответ 1

Зависит от того, что вы хотите сделать.

  • jQuery ready запустит ваш код, когда HTML будет готов, но пока изображения и другие ресурсы не будут завершены. Это самое раннее возможное время, когда вы можете изменить DOM с помощью JavaScript, поэтому он широко используется. (В современных браузерах он заменяется на родное событие DOMContentLoaded).
  • window.onload (событие load) начинается после завершения всего загрузки. Изображения, Flash и некоторые скрипты, но обычно не таблицы стилей. Используйте это для кода, который должен запускаться только тогда, когда страница больше не изменится.

Кроме того, при window.onload вы можете присоединить только один прослушиватель, но вы можете прикрепить столько, сколько хотите, с готовностью jQuery. Чтобы добавить несколько событий на window.onload, используйте addEventListener:

window.addEventListener('load', function () {

}, false);

Ответ 2

Да, window.onload позволяет вам иметь только один прослушиватель. jQuery готово присоединяет столько слушателей, сколько захотите.

Ответ 3

Windows.onload будет ждать загрузки всего страницы, включая изображения. Document.ready будет срабатывать, как только будет загружен html.