前言:
图片加载的过程当中往往会因为各种原因而无法加载图片,从而导致一些空白的出现
因此我们可以对img 的error事件进行监听。
<img src="//xxx.xxx.xxx/img.png" onerror="this.src = '../../XX.png'">
以上的写法虽然能实现,但是再每个img标签上写会比较的麻烦,代码重用,对于一个前端来说是无法容忍的。因此,我们可以全局写一个监听方法,并且判断是否是img引起的error
window.addEventListener('error',function(e){
// 判断异常是否由图片加载异常引起的
if( e.target.tagName.toUpperCase() === 'IMG' ){
e.target.src = ../../XX.png';
}
},true)
有一种情况就是断网得情况 所有得图片都无法加载,
解决方法:我们可以提前做判断,是否联网,给出警告!
//轮询监听是否断网
let my=this;
let time=setInterval(function(){
if (navigator.onLine) {
}
else {
//执行离线状态时的任务
// my.commond.warningMessage("请检查网络是否正常!");
alert("请检查网络是否正常!");
clearInterval(time)
}
}, 3000);