img onload 不触发,img onload 不执行

在做多图大图页面的时候,经常需要先loading,等待image.onload 才放开loading,但是img.onload在图片从缓存/内存直接读取的时候,部分浏览器如safari/微信 不触发img.onload 事件,

这时可以直接用img的conplete 属性先行判断

var img = document.querySelector('img');
var isLoaded = image.complete && image.naturalHeight !== 0;

if (isLoaded) {
  // from cache or memory
  // do somthing...
} else {
  img.onload = (e) => {
    // do somthing...
  }
}

你可能感兴趣的:(img onload 不触发,img onload 不执行)