jQuery: предварительная загрузка набора изображений, но только если ничего не загружается - PullRequest
1 голос
/ 28 января 2010

Можно ли с помощью jQuery определить, не загружается ли в данный момент браузер, и под чем-то, что я имею в виду, как загрузку изображений, так и вызовы .jpg Ajax и т. Д.

Я хотел бы добиться того,тайно (скрыто) предварительно загружает набор изображений (тяжелый по весу) в фоновом режиме, но не отвлекает другие процессы загрузки.Это означает, что они будут предварительно загружаться, только если браузеру больше нечего делать, а также прекратят предварительную загрузку, если что-то еще начнет загружаться.

Есть предложения?

1 Ответ

2 голосов
/ 28 января 2010

Посмотрите Ajax Events , в частности глобальное событие ajaxStop. Что касается знания, когда изображение закончило загрузку, можно использовать событие load. Например:

$("#myImage").load(function() {
    alert("image has completely loaded!");
});

Чтобы собрать их вместе:

$("selector").ajaxStop(function(event,request,settings){
    var $img = $('<img src="foo.jpeg" id="myImage"/>');
    $img.load(function() {
        alert("image has completely loaded!");
        $("div").append($(this));
    });
});
...