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

Load() устарел?

Я просматривал jQuery api и заметил, что метод загрузки находится в устаревшем списке.

Категории: Устаревшие | События > Загрузка документа

Обычно я использую этот метод, чтобы проверить, полностью ли загружены изображения. Почему это устарело? И что я должен использовать вместо этого?

4b9b3361

Ответ 1

См. ошибка # 11733, которая документирует это устаревание:

Метод .load() является неоднозначной сигнатурой, он может быть либо ajax загрузить или прикрепить/запустить событие "load". CCAO не может отличить их от это динамическое решение, основанное на аргументах.

Чтобы избежать двусмысленности, связанной с сигнатурой метода, теперь рекомендуется использовать on(). Например:

$("selector").load(function() {
    // ...
});

Должно стать:

$("selector").on("load", function() {
    // ...
});

Ответ 2

Функция загрузки, дезадаптированная в jQuery, альтернатива которой вы можете использовать как

$("iframe").on("load",function()
{
	
	alert("on loaded iframe");
	
});	

Ответ 3

Если load работает не так, как ожидалось, альтернатива:

$(window).one("scroll", foo);

или

$(window).one("scroll", function(){/*...*/});

В частности, привязка привязки прокрутки полезна в Android, когда DOMContentLoaded работает не так, как ожидалось, а IE8 и ниже, когда onreadystatechange работает не так, как ожидалось.

Ссылки