saber 酱的抱枕

Fly me to the moon

03/24
2017
学习

JavaScript处理加载失败的图片

最近我修改某个网站,删除了很多上传的图片,但是又懒得去文章里一篇篇去掉出错的图片(任务量太大),所以就想到了用JavaScript在网页上找出出错的图片,并将其隐藏。

一开始我自己尝试了写了一些代码试试,主要是使用img元素的onerror事件。虽然代码在demo中达到了预期效果,但是加在实际页面里却不生效。对此我有一些猜测,但尚不能确定准确原因,后来还是用谷歌搜了现成的代码。

document.addEventListener("error", function(e){
    var elem = e.target;
    if(elem.tagName.toLowerCase() === 'img'){
    	// 如果引发error事件的元素是img元素,就进行处理
        elem.style.display="none";		//隐藏该图片
    	// elem.src = "/img/hint.jpg";	//或者替换为其他图片
    }
}, true /*指定事件处理函数在捕获阶段执行*/);

将这份代码加在网页开头(所有img元素之前)即可。

参考:《以全局监听的方式处理img的error事件》

JavaScript处理加载失败的图片