Load() устарел?
Я просматривал jQuery api и заметил, что метод загрузки находится в устаревшем списке.
Категории: Устаревшие | События > Загрузка документа
Обычно я использую этот метод, чтобы проверить, полностью ли загружены изображения. Почему это устарело? И что я должен использовать вместо этого?
Ответы
Ответ 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
работает не так, как ожидалось.
Ссылки