0
我在我的頁面上有3個部分包含大量不同大小的圖像,我需要做的是確保這3個部分圖像中的每一個都有完全加載之前,我繼續申請任何過渡等,如褪色的部分等。在1頁上有多個imageLoaded調用,並確保每個調用完成之前
我想我知道我需要做什麼,但我不知道要執行它。我需要創建一個延遲對象,在完成解析延遲對象並運行deferred.when
或deferred.done
方法時監視這些調用中的每個調用,這聽起來可能是正確的嗎?正如我所說,我只是不知道如何做到這一點?
我使用imagesLoaded插件和我的代碼目前看起來是這樣的:
JS
$(function() {
var def1 = $.Deferred();
var def2 = $.Deferred();
var def3 = $.Deferred();
var def = $.when(def1, def2, def3);
$('.set1').imagesLoaded(function() {
console.log('Set 1 ready');
def1.resolve();
});
$('.set2').imagesLoaded(function() {
console.log('Set 2 ready');
def2.resolve();
});
$('.set3').imagesLoaded(function() {
console.log('Set 3 ready');
def3.resolve();
});
def.done(function() {
console.log('ready');
});
});
JS小提琴http://jsfiddle.net/dkzrv/1/