4.让自定义事件支持多绑定
可以用attachEvent或者addEventListener方法来实现多个事件处理程序的同时绑定,不会发生互相冲突,自定义事件同样也可以实现此机制。实现代码如下:
<script language="javascript" type="text/javascript" >
<!--
function User(){
//构造函数
}
//定义类成员
User.prototype = {
show: function(){
//如果有事件触发,则循环onshow数组,并触发该事件
if(this.onshow){
for( var i=0; i<this.onshow.length; i++ ){
this.onshow[i]();//调用事件处理程序
}
}
},
attachOnShow: function(_eHandler){
if(!this.onshow) this.onshow = [];//用数组存储绑定的事件处理程序引用
this.onshow.push(_eHandler);
}
}
var obj = new User();
function onShow1(){
alert(1);
}
function onShow2(){
alert(2);
}
//绑定两个事件处理程序
obj.attachOnShow(onShow1);
obj.attachOnShow(onShow2);
//调用show,触发onshow事件
obj.show();
//-->
</script>
此机制基本实现思想就是对数组的操作。
分享到:
相关推荐
本文实例讲述了Javascript面向对象程序设计对象成员的定义。分享给大家供大家参考,具体如下: 序: 刚接触javascript的时候,觉得这语言有点儿摸不着门道,感觉这玩意儿太难学了,没什么规范,没什么像样的手册,...
《JavaScript详解(第2版)》从JavaScript的编程结构开始,循序渐进地讲述了JavaScript及相关的CSS、W3C DOM、cookie、正则表达式和匹配模式,以及功能强大的Ajax。书中采用了大量课堂实践示例,附以详尽的代码行解释...
CDIO是一种新的国际化教学模式,旨在培养学生的工程设计能力、团队协作能力和终身学习能力。通过对企业的调研发现,毕业生的要求具有一定的共同性,包括工程基础、设计和过程的了解、实践经验、设计和创造能力、沟通...
3. 触摸事件和多点触控支持:Windows 8平板电脑的普及使得触摸界面的支持变得极为重要,本书介绍了如何处理触摸事件和设计适配触摸操作的界面。 4. 异步编程:Windows 8应用支持强大的异步编程模型,本书通过示例...
ASP.NET还引入了ASP.NET MVC(Model-View-Controller)架构,这是一种设计模式,鼓励开发者遵循清晰的职责划分。Model处理数据,View负责显示,Controller管理用户交互。MVC模式有助于实现可测试、可维护的代码,...
本书循序渐进地讲解了jquery高效开发的方法和技巧,内容包括jquery框架的设计模式和思路、sizzle选择器的构成和工作机制、dom文档操作、事件处理、动画设计、ajax异步通信、插件扩展和辅助工具等。 执行效率是...
本书循序渐进地讲解了jquery高效开发的方法和技巧,内容包括jquery框架的设计模式和思路、sizzle选择器的构成和工作机制、dom文档操作、事件处理、动画设计、ajax异步通信、插件扩展和辅助工具等。 执行效率是...
本书循序渐进地讲解了jquery高效开发的方法和技巧,内容包括jquery框架的设计模式和思路、sizzle选择器的构成和工作机制、dom文档操作、事件处理、动画设计、ajax异步通信、插件扩展和辅助工具等。 执行效率是...
游戏中有任务模式、随机模式、时间模式可供选择,学生们可以根据自己的需要由易到难地进行自我训练,逐渐积累单词量。 2. 对号入座:较正式的商务沟通对外贸函电格式的要求比较严格,经过统计主要有七种格式。本...
1. **事件监听和触发**:利用JavaScript的事件监听器(EventEmitter)或Promise的then/catch/finally等方法来触发和处理事件。 2. **函数注册与调度**:理解如何在全局或特定上下文中注册函数,并根据特定条件(如...
【标题】"collectionJava源码-javascript-playground"是一个项目,它主要关注的是Java和JavaScript相关的源代码收集,尤其在...通过研究源代码,不仅可以提升编程技能,还能了解到实际项目中的设计模式和最佳实践。
5. **.NET框架**:"1.NET反射、委托技术与设计模式.doc"介绍了.NET框架的高级特性,反射允许在运行时获取类型信息,而委托则支持事件处理。设计模式是解决常见软件设计问题的最佳实践,学习它们有助于编写更高效、可...
- **设计模式和UML的协作**:设计模式可以帮助优化UML设计,UML则可以通过图形化展示设计模式的应用。 - **设计模式和UML实践**: - 将设计模式应用于UML建模,使用设计模式优化UML结构,确保软件设计的合理性。 ...
这不仅有助于你编写更高效的异步代码,还能帮助你在设计模式中运用这一概念,如中介者模式、观察者模式等。 继续深入学习,你可以考虑以下扩展点: 1. 处理错误:在Node.js的`EventEmitter`中,有一个`error`事件...
再者,“源码”意味着我们可以深入研究每一行代码,学习其设计模式和编码规范。对于初学者,这是一个很好的学习资源,可以理解如何组织项目结构,如何优化性能,以及如何处理错误和异常。对于有经验的开发者,源码...
- **源码分析**:通过阅读源代码,可以学习到实际项目中的编程规范、设计模式以及问题解决策略。 4. **额外支持**: - 提供的百度网盘链接保证了资源的长期可访问性,即使文件较大也能方便下载。 - 助教老师协助...
【VRML:虚拟现实建模语言】 ...总之,通过《循序渐进学VRML》的学习,你将能够熟练地使用VRML进行3D设计,创建出栩栩如生的虚拟世界,无论是用于教育、娱乐还是工业应用,VRML都能提供强大的工具和无限的创意空间。
3. **MVC/MVVM架构**:该项目可能采用了Model-View-Controller (MVC) 或 Model-View-ViewModel (MVVM) 架构模式,这是常见的软件设计模式,用于分离业务逻辑与用户界面。学习者可以通过实践理解这两种架构如何提高...
- **设计模式**:单例、工厂、装饰器等23种GOF设计模式的应用。 6. **文件格式**: - **PDF(便携式文档格式)**:由Adobe公司开发,用于跨平台的文档交换,包含文本、图像、图形等元素,通常用于保证文档的原貌...