处理img标签加载图片失败时显示默认图片

一般的解决方法我们都知道,img标签支持onerror事件,在加载文档或图像的过程中如果发生了错误,就会触发onerror事件。可以使用一张提示错误的图片代替错误的图片。
例如这样使用:

<img src="image/logo.png" onerror="javascript:this.src='imags/error.png';">

当图片不存在时,将触发 onerror,而onerror 中又为img 指定一个error.png 图片。也就是说图片存在则显示logo.png,图片不存在将显示 error.png。

但是注意这里,如果error.png 图片也不存在,则会继续触发 onerror,导致死循环,页面卡死。而且,就算图片存在,但网络很不通畅,也可能触发 onerror。

当然,解决办法是有的,代码如下:

<img src="image/logo.png" onerror="slnotimg();"/>
<script type="text/javascript">
function slnotimg() {
var img = event.srcElement;
img.src = "image/error.png";
img.onerror = null; //解绑onerror事件
}
</script>
温馨提示: 本文最后更新于2019-06-25,至今已有1761天,某些文章具有时效性,若有错误或已失效,请在下方留言
© 版权声明
THE END
喜欢就支持一下吧❀
点赞0投币 分享
评论 抢沙发

    请登录后查看评论内容