今天遇到了一个问题,图片路径不正确时,要显示默认图片,我总结了大致有3种方法
- 直接在img标签操作,但是有一个弊端,当图片不存在时,将触发 onerror,而 onerror 中又为 img 指定一个 默认图片,如果 默认图片 也不存在,则继续触发 onerror,导致循环,故出现错误
<img src="图片路径" οnerrοr="this.src='默认图片的路径'"/>
2.大部分人推荐使用第二种,我这样写没起作用,但是很多人推荐使用这种,目前还没找到原因,可以自己尝试一下这种
<img src="图片路径" οnerrοr="nofind();" />
function nofind(){
var img=event.srcElement;
img.src="默认图片路径";
img.οnerrοr=null; 控制不要一直跳动
}
<img src="图片路径" οnerrοr="nofind(this);" />
function nofind(img){
img.src="默认图片路径";
img.οnerrοr=null; 控制不要一直跳动
}
3.个人推荐使用这种,在图片路径替换之后添加这段代码
$("#img" )[0].onerror = function(){
this.src = "默认图片路径";
};