В jQuery, когда вы делаете это:
$(function() {
alert("DOM is loaded, but images not necessarily all loaded");
});
Он ожидает загрузки DOM и выполняет ваш код. Если все изображения не загружены, он все равно выполняет код. Это, очевидно, то, что мы хотим, если мы инициализируем какие-либо вещи DOM, такие как показ или скрытие элементов или присоединение событий.
Допустим, что мне нужна анимация, и я не хочу, чтобы она работала, пока не загрузятся все изображения. Есть ли официальный способ сделать это в jQuery?
Лучший способ - использовать <body onload="finished()">, но я не хочу этого делать, если не буду этого делать.
Примечание: в jQuery 1.3.1 есть ошибка в Internet Explorer, которая действительно ожидает загрузки всех изображений перед выполнением кода внутри $function() { }. Поэтому, если вы используете эту платформу, вы получите поведение, которое я ищу, а не правильное поведение, описанное выше.
$("img").load()работает?