JS:attachEvent和addEventListener 使用方法

JS:attachEvent和addEventListener 使用方法
zhuan  http://blog.csdn.net/tzsmin/archive/2009/01/15/3784683.aspx

attachEvent方法,为某一事件附加其它的处理事件。(不支持Mozilla系列)

addEventListener方法 用于 Mozilla系列

举例:
document.getElementById( " btn " ).onclick  =  method1;
document.getElementById(
" btn " ).onclick  =  method2;
document.getElementById(
" btn " ).onclick  =  method3;
如果这样写,那么将会只有medhot3被执行

写成这样:
var  btn1Obj  =  document.getElementById( " btn1 " ); 
// object.attachEvent(event,function);
btn1Obj.attachEvent( " onclick " ,method1);
btn1Obj.attachEvent(
" onclick " ,method2);
btn1Obj.attachEvent(
" onclick " ,method3);
执行顺序为method3->method2->method1

如果是Mozilla系列,并不支持该方法,需要用到addEventListener
var  btn1Obj  =  document.getElementById( " btn1 " );
// element.addEventListener(type,listener,useCapture);
btn1Obj.addEventListener( " click " ,method1, false );
btn1Obj.addEventListener(
" click " ,method2, false );
btn1Obj.addEventListener(
" click " ,method3, false );
执行顺序为method1->method2->method3

使用实例:

1 。 
var  el  =  EDITFORM_DOCUMENT.body; 
// 先取得对象,EDITFORM_DOCUMENT实为一个iframe
if  (el.addEventListener) ... {
 el.addEventListener(
'click', KindDisableMenu, false);
}
  else   if  (el.attachEvent) ... {
 el.attachEvent(
'onclick', KindDisableMenu);
}

2 。 
if  (window.addEventListener)  ... {
 window.addEventListener(
'load', _uCO, false);
}
  else   if  (window.attachEvent)  ... {
 window.attachEvent(
'onload', _uCO);
}


你可能感兴趣的:(JS:attachEvent和addEventListener 使用方法)