当前位置:首页 >> 网页制作

HTML中图片不存在显示默认图片的方法示例

一个图片链接<img src="" /> 想用js 判断url是否有效如果404 就加载默认的图片路径

<img src="xxx" οnerrοr="this.src=默认图地址"/>

图片标签img的 onerror事件

<img src="pic.gif" οnerrοr="javascript:this.src='默认图地址';" alt="pic" />

分析:特别注意 onerror,当图片不存在时,将触发 onerror,而 onerror 中为 img 指定一个默认图片。也就是说图片存在则显示 pic.gif,图片不存在将显示默认图片。

存在的问题:如果默认图片也不存在,则继续触发 onerror,导致循环,故出现错误。如果图片存在,但网络很不通畅,也可能触发 onerror。

解决方法:通过函数加载默认图片,仅加载一次

<img src="abc.jpg" onerror="nofind()" />
<script type="text/javascript">
function nofind(){
  var img=event.srcElement;
  img.src="http://mat1.gtimg.com/cd/2017/home/nlogo0518.png"; //替换的图片
  img.onerror=null; //控制不要一直触发错误
}
</script>