为了美观当网页图片不存在时不显示叉叉图片浏览器
当在页面显示的时候,万一图片被移动了位置或者丢失的话,将会在页面显示一个带X的图片,非常影响用户的体验。即便使用alt属性给出了”图片XX”的提示信息,也起不了多大做用。
其实,能够这样处理:当图片不存在的时候,会触发onerror事件,咱们能够在该事件中作一下补救的工做,好比:测试
一、让这个图片元素隐藏:this
1 <img src="图片的url地址" alt="图片XX" onerror="this.style.display='none'"/>
二、用默认的图片替换:url
1 <img src="图片的url地址" alt="图片XX" onerror="this.src='默认图片的url地址'"/>
注意:若是使用不当,在IE内核的浏览器下会形成死循环。spa
好比:当【默认图片的url地址】也加载不成功(好比网速比较慢的时候)或不存在的话,就会反复的加载,最后形成堆栈溢出错误。code
所以, 须要用下面两种方法解决:blog
a、更改 onerror 代码为其它处理方式或者确保 onerror 中的默认图片足够小,而且存在。事件
b、控制onerror事件只触发一次,须要增长这句话:this.onerror=null; 增长后以下:图片
1 <img src="图片的url地址" alt="图片XX" onerror="this.src='默认图片的url地址';this.onerror=null"/>
经测试,上面的方法在IE各个版本及谷歌、火狐浏览器中都支持。class