konakona
图片不存在时,显示一个默认的图片
图片不存在时,显示一个默认的图片

img标签src对应的图片不存在,显示一个默认的图片

最简单的方法:

<img src="abc.JPG" onerror="this.src='default.JPG'" />

 

但这个方法有一个弊端,就是当default.jpg也不存在时,网页就会死循环。

 

因此优良版是:

 

JS代码:

function imgError(obj){
obj.src='/error/images/filmthum_err.gif';
obj.onerror = null;//控制onerror事件只触发一次
}

function imgLoading(obj) {
obj.nextSibling.style.display='none';
obj.style.display='block';
}

HTML代码:

<img src="${Image}" onerror="imgError(this);" alt="${imgName}" onload= "imgLoading(this);"/><div> loading... </div>

CSS代码:

img {
border: 1px solid #CFCFCF;
overflow: hidden;
height: 141px;
padding: 2px;
width: 115px;
display:none;
}
.imgLoading {
border: 1px solid #CFCFCF;
height: 141px;
overflow: hidden;
padding: 2px;
width: 115px;
background: url('/images/loading.gif') center center no-repeat;
display: block;
}

 

 

赞赏
没有标签
首页      程序开发      前端技术      图片不存在时,显示一个默认的图片
https://secure.gravatar.com/avatar/3b712b34a0e1b689cfb524c9c6bcdc47?s=256&r=g

团哥

文章作者

继续玩我的CODE,让别人说去。 低调,就是这么自信。

发表评论

textsms
account_circle
email

  • https://secure.gravatar.com/avatar/c7c9ad3fece5dc84a4da6fb8ec420495?s=80&r=g
    碌木

    我觉得
    img{background:url(default.jpg) center center no-repeat;}
    就行了,因为img有内容的话,是不会显示css背景的

    8年前回复

konakona

图片不存在时,显示一个默认的图片
img标签src对应的图片不存在,显示一个默认的图片
扫描二维码继续阅读
2011-09-05