`
cakin24
  • 浏览: 1333292 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

触发onerror事件处理异常

阅读更多
一 介绍
触发onerror事件是最早用于处理JavaScript异常的机制,页面出现异常时,将触发onerror事件,该事件在window对象上触发。
语法:
<script language="javascript">
window.onerror=function()
{
alert("您调用的函数不存在");
 return true;
}
</script>
window.onerror:触发onerror事件。
如果在onerror事件处理函数中没有使用return true语句,在弹出错误提示对话框后,浏览器的错误报告也会显示出来。为了隐藏此错误报告,函数需要返回true。
图像对象也可以触发onerror事件。
语法:
<script language="javascript">
document.images[0].onerror=function()
{
somestatements;
return true;
}
</script>
document.images[0]:页面中的第一个图像。
使用onerror事件处理异常除了可以捕捉异常之外,还可以提供如下3种信息来确定发生异常的详细信息。
1、异常信息:获取异常信息。
2、URL:获取发生异常的文件的绝对路径。
3、行号:给定发生异常文件的行号。
语法:
<script language="javascript">
window.onerror=function(ms,Url,Line)
{
alert("您调用的函数不存在\n"+ms+"\n"+Url+"\n"+Line+"\n");
 return true;
}
</script>
 
二 使用onerror事件处理异常应用
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>onerror事件</title>
<script language="javascript">
window.onerror=function(ms,Url,Line)
{
alert("您调用的函数不存在\n"+ms+"\n"+Url+"\n"+Line+"\n");//弹出错误提示对话框
 return true; //返回true
}
function ImgLoad()
{
document.images[0].onerror=function()
{
 alert("您调用的图像并不存在\n"); 
};
document.images[0].src="test.gif";
}
</script>
</head>
<body onload="ImgLoad()">
<script language="javascript">
onHave(); //调用不存在的onHave()函数
</script>
<img/>
</body>
</html>
 
三 运行结果



 
 
四 运行说明
1、由于在HTML文件中<body>区域调用页面中并没有定义的函数onHave(),所以执行此页面将会发出异常。这时,会弹出显示“您调用的函数不存在”的错误提示对话框,同时在此对话框中显示此异常的相关详细信息,包括错误信息、发生异常文件的绝对路径以及在程序中发生异常的行号。
2、在页面中定义了一个图像,由于此时没有赋给此图像src特性,所以在onerror事件处理函数中赋给第一个图像src值将会出现异常,程序将弹出错误提示对话框。
  • 大小: 7 KB
  • 大小: 6.4 KB
1
0
分享到:
评论

相关推荐

    javascript完全学习手册2 源码

    13.3.2 触发onError事件处理异常 13.3.3 使用trycatch语句处理异常 13.3.4 Error对象 13.3.5 使用throw语句 13.4 JavaScript调试技法 13.4.1 使用alen()语句 13.4.2 使用write()语句 13.4.3 抛出...

    javascript完全学习手册1 源码

    13.3.2 触发onError事件处理异常 375 13.3.3 使用try...catch语句处理 异常 377 13.3.4 Error对象 379 13.3.5 使用throw语句 380 13.4 JavaScript调试技巧 381 13.4.1 使用alert()语句 382 13.4.2 使用write()语句 ...

    JavaScript中的onerror事件概述及使用

    onerror事件用来协助处理页面中的JavaScript错误。当页面上出现异常时,error事件便在window对象上触发。例如:  在这种情况下,浏览器会显示错误信息: 。 如果不希望浏览器在默认对话框中显示出错消息,让on...

    YII Framework教程之异常处理详解

    本文讲述了YII Framework异常处理。分享给大家供大家参考,具体如下: ...1.触发onError或者onException事件 2.人为抛出异常。例如 throw new ExceptionClass('错误信息');//异常的基类 throw new CHtt

    Oraclet中的触发器

    在ORACLE系统里,触发器类似过程和函数,都有声明,执行和异常处理过程的PL/SQL块,不过有一点不同的是,触发器是隐式调用的,并不能接收参数。 触发器优点 (1)触发器能够实施的检查和操作比主键和外键约束、...

    大名鼎鼎SWFUpload- Flash+JS 上传

     file_dialog_complete_handler : file_dialog_complete_function, 当文件选取对话框关闭后触发的事件处理函数  upload_start_handler : upload_start_function, 开始上传文件前触发的事件处理函数  upload_...

    其余:RESTFul服务ColdBox MVC模板

    隐式方法基本处理程序实现了环绕处理程序方法,以提供一致性和以下操作: onError任何动作中出现运行时异常时触发onInvalidHTTPMethod在无效的HTTP方法访问时触发onMissingAction在处理程序上的无效缺失操作上触发...

    Laravel统一错误处理为JSON的方法介绍

    Laravel中的AppExceptionsHandler 类负责记录应用程序触发的所有异常,这在我们开发过程中十分方便,总是try…catch使代码太过繁琐且可读性大大降低,那么怎么使用它处理异常为json呢? 方法如下: 我们可以新建一个...

    java8源码-bridge:类似于Stream流,但操作单个元素的工具

    ③使用操作符可以使代码分块,并且可以通过onError操作符来进行异常处理,使代码中再也不用处理运行时异常,便于阅读、维护; ④操作符易上手、操作简单、灵活高、自由组合,可以满足各种场景; ⑤桥梁节点操作符易...

    Oracle8i_9i数据库基础

    §16.4.2.3 使用户raise_application_error处理 286 第十七章 创建包和使用包 287 §17.1 引言 287 §17.2 包的定义 288 §17.3 包的开发步骤 289 §17.4 包的头部说明 289 §17.5 包体的说明 290 §17.6 删除过程、...

    oracle数据库经典题目

    系统触发器主要是DML事件和系统事件发生时调用的触发器,其中DML事件包括CREATE、DROP、ALTER等,系统事件包括LOGON、LOGOFF、STARTUP、SHUTDOWN、SERVERERROR等。 9.简述Oracle数据库角色的种类、作用,以及如何...

    岳维功 ortp-realease.pdf

    on network error signa events allocator tp Sessiorlisu lticast ttl multicast loopback data Lng current tev d contribut. ing sources use connect ssrc set 图 可以看到,这是一个非常大的结构体,从侧面说明了...

    雅马哈贴片机培训资料全.doc

    " "ERROR "停止蜂鸣器声音,消除错误或报警提示 " "CLEAR " " "EMERGENCY "触发紧急停止,向右旋转可以释放该按键 " "STOP " " [ACTIVE] 按钮配备在主机的前后两处,不能同时打开两处按钮。[READY][START][ERROR ...

    oracle实验报告

    (1)触发器可以声明为在对记录进行操作之前,在之前(检查约束之前和 INSERT,UPDATE 或 DELETE 执行前)或之后(在检查约束之后和完成 INSERT, UPDATE 或 DELETE 操作)触发.。 (2)一个 FOR EACH ROW 执行指定操作...

    ExtAspNet v2.2.1 (2009-4-1) 值得一看

    -修正CheckBox控件的CheckedChanged事件会被触发两次的BUG(Data PostBack-&gt;AutoPostBack, Event PostBack-&gt;EnablePostBack)。 -为TextBox,TextArea,DatePicker,NumberBox,TriggerBox等控件增加AutoPostBack属性...

    精髓Oralcle讲课笔记

    61、select ename, sal from emp join (select max(sal) max_sal ,deptno from emp group by deptno) t on (emp.sal = t.max_sal and emp.deptno=t.deptno); --查询每个部门中工资最高的那个人 -----------------...

Global site tag (gtag.js) - Google Analytics