• img标签的onerror事件


    #情景分析:

      有时,img标签中的src图片加载失败,原来的图片位置会出现一个碎片图标,这样让人很不爽,如何变得美观些呢?

    #解决方案:

      可以借用img标签的onerror事件,img标签支持onerror 事件,在装载文档或图像的过程中如果发生了错误,就会触发onerror事件。可以使用一张提示错误的图片代替显示不了的图片。代码如下: 

    <img src="images/logo.png" onerror="javascript:this.src='images/logoError.png';">

      当图片images/logo.png不存在时,将触发 onerror事件,而 onerror 中又为该 img 指定了images/logoError.png图片。也就是说图片images/logo.png存在则显示logo.png,图片images/logo.png不存在将显示 logoError.png。

      *问题:如果images/logoError.png 也不存在,则会继续触发 onerror事件,导致死循环,故会出现打开网页时提示 Stack overflow at line: 0 错误。特别说明:如果图片存在,但网络很不通畅,也可能触发 onerror事件

      *解决方法:控制它不循环,代码如下:

    1 <script type="text/javascript"> 
    2     function imgerrorfun(){ 
    3         var img=event.srcElement; 
    4         img.src="images/logoError.png"; 
    5         img.onerror=null; 控制不要一直跳动 
    6     } 
    7 </script> 
    8 
    9 <img src="images/logo.png" onerror="imgerrorfun();" />

    ***————————————————————————————————————————***

  • 相关阅读:
    Java进阶10 内存管理与垃圾回收
    C编译: makefile基础
    Java基础09 类数据与类方法
    Java进阶06 容器
    C编译: 动态连接库 (.so文件)
    Java基础10 接口的继承与抽象类
    纸上谈兵: 左倾堆 (leftist heap)
    Java进阶02 异常处理
    Java进阶05 多线程
    Java基础12 类型转换与多态
  • 原文地址:https://www.cnblogs.com/willingtolove/p/9544576.html
Copyright © 2020-2023  润新知