鍍金池/ 問答/HTML/ js 或者 jq怎么判斷所有圖片加載完成?

js 或者 jq怎么判斷所有圖片加載完成?

js 或者 jq怎么判斷所有圖片加載完成?

回答
編輯回答
清夢
2017年12月20日 07:12
編輯回答
陌顏

用document的onload事件,或者如果只關(guān)心圖片,就掛接img的load事件。

$('img').on('load', function() {
    // xxx
});
2018年7月14日 05:57
編輯回答
愚念

用到j(luò)s圖片的onload事件,jq的load

2018年1月23日 18:48
編輯回答
安淺陌

那得預(yù)先知道圖片的數(shù)量了,加一個計數(shù)器,在load回調(diào)函數(shù)中

var i = 0;
$('img').load(function(){
    i++;
    if(i==x){
        ...
    }
});
2018年5月12日 14:37
編輯回答
尕筱澄
 /**
 *加載圖片
 * @param arr ['圖片鏈接']
 * @returns {Array}
 */
function loadImg(arr) {
    var newimages = [];
    var arr = (typeof arr != "object") ? [arr] : arr  //確保參數(shù)總是數(shù)組
    for (var i = 0; i < arr.length; i++) {
        newimages[i] = new Promise(function (resolve, reject) {
            var image = new Image();
            image.addEventListener('load', function listener() {
                resolve(image);
                this.removeEventListener('load', listener);
            });
            image.src = arr[i];
            image.addEventListener('error', reject);
        })
    }
    return newimages
}
Promise.all(loadImg(listPics)).then(function () {
    console.log('圖片加載完成')
});

之前項目使用過的加載全部圖片的處理方案,希望能幫助你

2017年5月25日 13:12