判斷傳入的圖片是否加載完成

module.exports = (imageArr = [], callback) => {
  let imageLoadNum = 0;

  imageArr.forEach(item => {
    const image = new Image();

    image.src = item.image;
    if (image.complete) {
      imageLoadNum++;
      if (imageLoadNum === imageArr.length && callback) {
        callback();
      }
    } else {
      image.onload = function() {
        imageLoadNum++;
        if (imageLoadNum === imageArr.length && callback) {
          callback();
        }
      };
    }
  });
};
image.complete 表明當前圖片有緩存,這個時候不會觸發onload事件
相關文章
相關標籤/搜索