`

attachEvent与addEventListener

阅读更多
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) { }

 function beforeCheck(){
      if(checkFlag) {
          return ;
      }
       if(changeFlag){
          return "the old was not saved,";
      }else{
        return ;
      }
  }

 //关闭浏览器时触发的事件
 window.onbeforeunload = beforeCheck;

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
 <HEAD>
<script>
function method1(){
alert('method1');
}
function method2(){
alert('method2');
}
function method3(){
alert('method3');
}

</script>
 </HEAD>

 <BODY id='by'>
  <input type='button' value='Button' id='btn'/>
  <input type='button' value='Button1' id='btn1'/>
 </BODY>

 <script>
(function test(){
document.getElementById("btn").onclick = method1;  
document.getElementById("btn").onclick = method2;  
document.getElementById("btn").onclick = method3;//只有method3被执行 
})();

(function tt(){
var el = document.getElementById("btn1");
if (el.addEventListener){ //Mozilla系列下
     el.addEventListener('click', method1, false);  
} else if (el.attachEvent){ //IE下
     el.attachEvent('onclick', method1); 
	 el.attachEvent('onclick', method2); 
	 el.attachEvent('onclick', method3); 
	 //执行顺序method3->method2->method1
}
})();
</script>
</HTML>


onkeypress是在用户按下并放开任何字母数字键时发生。系统按钮(例如,箭头键和功能键)无法得到识别。
onkeyup 是在用户放开任何先前按下的键盘键时发生。
onkeydown 是在用户按下任何键盘键(包括系统按钮,如箭头键和功能键)时发生。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics