码迷,mamicode.com
首页 > 其他好文 > 详细

onerror事件

时间:2016-11-10 02:05:07      阅读:238      评论:0      收藏:0      [点我收藏+]

标签:显示   返回值   替代   cli   调用   als   ack   false   com   

onerror 事件会在文档或图像加载过程中发生错误时被触发。

  在装载文档或图像的过程中如果发生了错误,就会调用该事件。

例:

img标签中的src图片加载失败,原来的图片位置会出现一个加载失败的小图;

onerror事件就在发生错误时被调用,从而用一张备用图片替代原图;

<img src="images/pic.jpg"onerror="javascript:this.src=‘images/error.jpg;‘"/>

如果error.jpg 也不存在,则继续触发 onerror,去请求error.jpg,然后循环、报错404。

解决:

  1.保证备用图片一定存在,并且足够小,在网速情况差的时候也能轻松加载;

  2.当备用图片加载错误再次触发onerror时,让其不再请求;

<img src="images/pic.jpg" onerror="nofind(this)"/>
<script type="text/javascript"> 
    function nofind(){ ; 
        img.src="images/error.jpg"; 
        img.onerror=null; 
    } 
</script>

 

W3school:

使用 onerror 事件是一种老式的标准的在网页中捕获 Javascript 错误的方法。(chrome、opera、safari 浏览器不支持)

创建一个函数

function handleErr(msg,url,l){  //msg(错误消息)、url(发生错误的页面的 url)、line(发生错误的代码行)
  //Handle the error here
  return true or false
}

浏览器是否显示标准的错误消息,取决于 onerror 的返回值。如果返回值为 false,则在控制台 (JavaScript console) 中显示错误消息。反之则不会。

<html>
<head>
    <script type="text/javascript">
        onerror=handleErr
        var txt=""

        function handleErr(msg,url,l){
            txt =  "There was an error on this page.\n\n";
            txt += "Error: " + msg + "\n";
            txt += "URL: " + url + "\n";
            txt += "Line: " + l + "\n\n";
            txt += "Click OK to continue.\n\n";
            alert(txt);
            return true;
        }

        function message(){
            adddlert("Welcome guest!")
        }
    </script>
</head>
<body>
  <input type="button" value="View message" onclick="message()" />
</body>
</html>

 

onerror事件

标签:显示   返回值   替代   cli   调用   als   ack   false   com   

原文地址:http://www.cnblogs.com/Axwen/p/6049044.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!