• 欢迎访问开心洋葱网站,在线教程,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入开心洋葱 QQ群
  • 为方便开心洋葱网用户,开心洋葱官网已经开启复制功能!
  • 欢迎访问开心洋葱网站,手机也能访问哦~欢迎加入开心洋葱多维思维学习平台 QQ群
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏开心洋葱吧~~~~~~~~~~~~~!
  • 由于近期流量激增,小站的ECS没能经的起亲们的访问,本站依然没有盈利,如果各位看如果觉着文字不错,还请看官给小站打个赏~~~~~~~~~~~~~!

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

JavaScript 水墨上仙 2667次浏览

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

/* 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];
}
/* end of the object add event handler script*/


开心洋葱 , 版权所有丨如未注明 , 均为原创丨未经授权请勿修改 , 转载请注明JavaScript为指定的对象添加多个事件处理程序
喜欢 (0)
加载中……