你的位置:首页 > Java教程

[Java教程]javascript元素绑定事件


js元素绑定事件

 

想给一个元素绑定一个方法之后,在绑定一个方法而且不被覆盖

复制代码
 window.onload = function () {    alert('a');   }window.onlaod=function(){     alert('b')}
复制代码

我们发现它只弹出一个,有一个被覆盖了

下面就说一下js中的绑定事件

复制代码
复制代码
  attachEvent(IE中用)  var oBtn = document.getElementById('btn1');  oBtn.attachEvent('onclick', function () { alert('a') } );  oBtn.attachEvent('onclick', function () { alert('baa') } );  但在ff 和chrome 却用不了 在 ff和chrome是用addEventListener 它们是click 而IE中是onclick   oBtn.addEventListener('click', function () { alert('a') }, false);   oBtn.addEventListener('click', function () { alert('b') }, false);
兼容性判断

var oBtn = document.getElementById('btn1');

 if (oBtn.attachEvent) { //IE 中
    oBtn.attachEvent('onclick',function () { alert('a') }
); 

 oBtn.attachEvent('onclick',

   function () { alert('baa') }
 );

}
 else {
//firefox googleChorme
  oBtn.addEventListener('click', function () { alert('a') }, false);
  oBtn.addEventListener('click', function () { alert('b') }, false);

 }

//为了代码好看一点,写一个代码封装判断兼容性


function myAddEvent(obj, ev, fn) {
if (obj.attachEvent) {
   obj.attachEvent('on' + ev, fn);
}
else
{
   obj.addEventListener(ev, fn, false);
}
}