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中引用百度地图并将百度地图的logo和信息去掉
Sep 29 Javascript
Javascript 实现的数独解题算法网页实例
Oct 15 Javascript
jquery常用特效方法使用示例
Apr 25 Javascript
详解JavaScript中数组和字符串的lastIndexOf()方法使用
Mar 13 Javascript
第二次聊一聊JS require.js模块化工具的基础知识
Apr 17 Javascript
js+html制作简单验证码
Feb 16 Javascript
小程序页面动态配置实现方法
Feb 05 Javascript
详解微信小程序实现跑马灯效果(附完整代码)
Apr 29 Javascript
js实现弹幕飞机效果
Aug 27 Javascript
JavaScript函数柯里化实现原理及过程
Dec 02 Javascript
jQuery+ajax实现文件上传功能
Dec 22 jQuery
vue.js watch经常失效的场景与解决方案
Jan 07 Vue.js
完美兼容多浏览器的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
php fputcsv命令 写csv文件遇到的小问题(多维数组连接符)
2011/05/24 PHP
PHP常用字符串操作函数实例总结(trim、nl2br、addcslashes、uudecode、md5等)
2016/01/09 PHP
Laravel中Trait的用法实例详解
2016/03/16 PHP
PHP 应用容器化以及部署方法
2018/02/12 PHP
JavaScript 5 新增 Array 方法实现介绍
2012/02/06 Javascript
javascript中parentNode,childNodes,children的应用详解
2013/12/17 Javascript
javascript实现json页面分页实例代码
2014/02/20 Javascript
javascript闭包入门示例
2014/04/30 Javascript
JQuery EasyUI 日期控件如何控制日期选择区间
2014/05/05 Javascript
JavaScript实现添加及删除事件的方法小结
2015/08/04 Javascript
原生js实现数字字母混合验证码的简单实例
2015/12/10 Javascript
基于javascript实现全屏漂浮广告
2016/03/31 Javascript
Node.js如何自动审核团队的代码
2016/07/20 Javascript
ES6中参数的默认值语法介绍
2017/05/03 Javascript
angular实现图片懒加载实例代码
2017/06/08 Javascript
js模拟百度模糊搜索的实例
2017/08/04 Javascript
python常用知识梳理(必看篇)
2017/03/23 Python
python脚本生成caffe train_list.txt的方法
2018/04/27 Python
Python生成器generator用法示例
2018/08/10 Python
浅谈python3.6的tkinter运行问题
2019/02/22 Python
pandas对dataFrame中某一个列的数据进行处理的方法
2019/07/08 Python
pytorch中的transforms模块实例详解
2019/12/31 Python
PyTorch的自适应池化Adaptive Pooling实例
2020/01/03 Python
浅谈keras中loss与val_loss的关系
2020/06/22 Python
萌新HTML5 入门指南(二)
2020/11/09 HTML / CSS
德国百年厨具品牌WMF美国站:WMF美国
2016/09/12 全球购物
苹果Mac升级:MacSales.com
2017/11/20 全球购物
小学后勤管理制度
2014/01/14 职场文书
旅游活动总结
2014/08/27 职场文书
2014年技术员工作总结
2014/11/18 职场文书
银行员工考核评语
2014/12/31 职场文书
辞职信标准格式
2015/02/27 职场文书
三八节活动简报
2015/07/20 职场文书
素质拓展训练感想
2015/08/07 职场文书
八年级作文之友情
2019/11/25 职场文书
MutationObserver在页面水印实现起到的作用详解
2022/07/07 Javascript