JavaScript实现为指定对象添加多个事件处理程序的方法


Posted in Javascript onApril 17, 2015

本文实例讲述了JavaScript实现为指定对象添加多个事件处理程序的方法。分享给大家供大家参考。具体如下:

如果你希望对象点击的时候同时处理多个事情,可以使用下面的代码

/* Start of the multihandle Object...*/
function MultiHandle(owner){
 var my_handlers = new Array();
 var my_owner = owner;
 this.append = function(handler){
  my_handlers[my_handlers.length] = handler;
 }
 this.fire = function(evt){
  var i;
  for(i = 0; i < my_handlers.length; i++){
   my_owner.tempspace = my_handlers[i];
   my_owner.tempspace(evt);
  }
 }
}
/* End of the multihandle object*/
/* start of the object add event handler script */
 
/*This bit goes where you'd normally write...
... object.onmouseup = [event handler]...
... where [event handler] is an existing function ...
... that handles an event, or even an
... anonymous function.*/
if(typeof(MultiHandle) != "undefined"){
 var mup_handler = object.mh_onmouseup;
 if(!mup_handler){
  mup_handler = new MultiHandle(object);
  object.mh_onmouseup = mup_handler;
  object.onmouseup = function(evt){
  this.mh_onmouseup.fire(evt);
  };
 }
 mup_handler.append([event handler]);
}else{
 object.onmouseup = [event handler];
}

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
js+css在交互上的应用
Jul 18 Javascript
jquery中dom操作和事件的实例学习 下拉框应用
Dec 01 Javascript
jquery创建一个ajax关键词数据搜索实现思路
Feb 26 Javascript
图片img的src不变让浏览器重新加载实现方法
Mar 29 Javascript
图标线性回归斜着移动到指定的位置
Aug 16 Javascript
小巧强大的jquery layer弹窗弹层插件
Dec 06 Javascript
基于BootStrap的图片轮播效果展示实例代码
May 23 Javascript
微信小程序  http请求封装详解及实例代码
Feb 15 Javascript
在vue中使用css modules替代scroped的方法
Mar 10 Javascript
JavaScript继承的特性与实践应用深入详解
Dec 30 Javascript
Vue的transition-group与Virtual Dom Diff算法的使用
Dec 09 Javascript
js根据后缀判断文件文件类型的代码
May 09 Javascript
完美兼容多浏览器的js判断图片路径代码汇总
Apr 17 #Javascript
JavaScript控制网页平滑滚动到指定元素位置的方法
Apr 17 #Javascript
原生js实现移动开发轮播图、相册滑动特效
Apr 17 #Javascript
JavaScript实现简单图片翻转的方法
Apr 17 #Javascript
JavaScript实现将xml转换成html table表格的方法
Apr 17 #Javascript
JavaScript实现的简单幂函数实例
Apr 17 #Javascript
js面向对象之公有、私有、静态属性和方法详解
Apr 17 #Javascript
You might like
站长助手-网站web在线管理程序 v1.0 下载
2007/05/12 PHP
PHP项目开发中最常用的自定义函数整理
2010/12/02 PHP
php基于PDO连接MSSQL示例DEMO
2016/07/13 PHP
我也种棵OO树JXTree[js+css+xml]
2007/04/02 Javascript
js实现的真正的iframe高度自适应(兼容IE,FF,Opera)
2010/03/07 Javascript
Jquery 选中表格一列并对表格排序实现原理
2012/12/15 Javascript
把字符串按照特定的字母顺序进行排序的js代码
2014/01/28 Javascript
图解JavaScript中的this关键字
2020/05/28 Javascript
Webpack 实现 AngularJS 的延迟加载
2016/03/02 Javascript
浅析Bootstrap缩略图组件与警示框组件
2016/04/29 Javascript
JQuery实现文字无缝滚动效果示例代码(Marquee插件)
2017/03/07 Javascript
seajs实现强制刷新本地缓存的方法分析
2017/10/16 Javascript
在vue组件中使用axios的方法
2018/03/16 Javascript
轻量级JS Cookie插件js-cookie的使用方法
2018/03/22 Javascript
详解Vue webapp项目通过HBulider打包原生APP
2018/06/29 Javascript
vue iview的菜单组件Mune 点击不高亮的解决方案
2019/11/01 Javascript
Vue-CLI与Vuex使用方法实例分析
2020/01/06 Javascript
Python实例分享:快速查找出被挂马的文件
2014/06/08 Python
Python Pandas分组聚合的实现方法
2019/07/02 Python
Python Pandas 转换unix时间戳方式
2019/12/07 Python
Pyinstaller 打包发布经验总结
2020/06/02 Python
html5 利用重力感应实现摇一摇换颜色可用来做抽奖等等
2014/05/07 HTML / CSS
AmazeUI 面板的实现示例
2020/08/17 HTML / CSS
购买澳大利亚最好的服装和内衣在线:BONDS
2016/10/14 全球购物
Tessabit日本:集世界奢侈品和设计师品牌的意大利精品买手店
2020/01/07 全球购物
美国价格实惠的在线眼镜网站:Zeelool
2020/12/25 全球购物
机械专业个人求职自荐信格式
2013/09/21 职场文书
毕业生机械建模求职信
2013/10/14 职场文书
人力资源行政经理自我评价
2013/10/23 职场文书
个人收入证明范本
2014/01/12 职场文书
自我鉴定怎么写
2014/01/12 职场文书
委托书范文
2014/04/02 职场文书
行政执法作风整顿剖析材料
2014/10/11 职场文书
国家助学金受助感言
2015/08/01 职场文书
opencv 分类白天与夜景视频的方法
2021/06/05 Python
python和anaconda的区别
2022/05/06 Python