Javascript 回调和事件(翻译)

作者:mingcheng 来源:gracecode.com 时间:2009-03-28 11:47:00 

Dean Edwards 最近有篇文章很精彩,忍不住在这里翻译下。

-- Split --

很多 Javascript 框架都提供了自定义事件(custom events),例如 jQuery、YUI 以及 Dojo 都支持“document ready”事件。而部分自定义事件是源自回调(callback)。

回调将多个事件句柄存储在数组中,当满足触发条件时,回调系统则会从数组中获取对应的句柄并执行。那么,这会有什么陷阱呢?在回答这个问题之前,我们先看下代码。

下面是两段代码依次绑定到 DOMContentLoaded 事件中

document.addEventListener("DOMContentLoaded", function() {  console.log("Init: 1");  DOES_NOT_EXIST++; // 这里会抛出异常}, false);document.addEventListener("DOMContentLoaded", function() {  console.log("Init: 2");}, false);

那么运行这段代码会返回什么信息?显然,会看见这些(或者类似的):

Init: 1Error: DOES_NOT_EXIST is not definedInit: 2

可以看出,两段函数都被执行。即使第一个函数抛出了个异常,但并不影响第二段代码运行。

标签:JavaScript框架,回调,事件
0
投稿

猜你喜欢

  • 1500个绚丽主题 谷歌中国个人风格首页发布

    2008-11-12 11:14:00
  • Javascript语法检查插件 jsLint for Vim

    2009-03-11 16:37:00
  • 使用ACCESS做网络版程序的四种解决方案

    2009-01-14 16:22:00
  • SQL Server 总结复习 (二)

    2012-10-07 10:35:00
  • Oracle 数据库操作类

    2009-08-12 12:06:00
  • Bad Tags — html有害的标签

    2008-10-13 19:47:00
  • Request.ServerVariables应用实例

    2008-03-11 11:57:00
  • 如何进行MySQL数据库表的故障检测

    2009-02-10 10:34:00
  • 轻松掌握执行一个安全的SQL Server安装

    2009-01-13 14:03:00
  • 关于ASP循环表格的问题之解答[比较详细]

    2011-04-08 11:14:00
  • asp 动态数组 提供Add、Insert、Remove、RemoveAt、Search等方法。

    2011-03-17 11:10:00
  • 纯CSS3透明水晶盒

    2011-08-24 20:20:06
  • JavaScript 中的 Base64 编码(一):Encode

    2010-07-23 10:16:00
  • SQL Server导入导出数据方法

    2007-08-17 09:50:00
  • ASP初学者常犯的几个错误

    2007-09-07 10:19:00
  • 淘宝2011新版首页开发实践

    2011-01-20 20:07:00
  • 人性化网页设计技巧

    2007-10-15 13:02:00
  • 不是原型继承那么简单!prototype的深度探索

    2008-03-07 12:42:00
  • 学习ASP.NET八天入门:第四天

    2007-08-07 13:40:00
  • 实例讲解启动mysql server失败的解决方法

    2008-12-26 17:27:00
  • asp之家 网络编程 m.aspxhome.com