开发者俱乐部
标题:
[原生js] JavaScript实现为指定对象添加多个事件处理程序的方法
[打印本页]
作者:
jack
时间:
2016-3-17 06:10
标题:
[原生js] JavaScript实现为指定对象添加多个事件处理程序的方法
这篇文章主要介绍了JavaScript实现为指定对象添加多个事件处理程序的方法,可实现让指定对象处理多个事件的功能,具有一定参考借鉴价值,需要的朋友可以参考下
本文实例讲述了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程序设计有所帮助。
欢迎光临 开发者俱乐部 (http://xodn.com/)
Powered by Discuz! X3.2