DOM2级事件定义了两个方法 :addEventListener()和removeEventListener()。接受三个参数:要处理的事件名,作为事件处理的函数和一个布尔值。最后的布尔值如果是true,表示在捕获阶段调用事件处理程序,如果false,表示在冒泡阶段调用事件处理程序。
例如 :要在click事件添加处理程序,可以使用下列代码:
var btn=document.getElementById("myBtn"); btn.addEventListener("click",function(){ alert(this.id); },false);
var btn=document.getElementById("myBtn"); btn.addEventListener("click",function(){ alert(this.id); },false); btn.removeEventListener("click",function(){ //没有用 alert(this.id); },false);
var btn=document.getElementById("myBtn"); btn.addEventListener("click",function(){ console.log(this.id); // myBtn },false);
var btn=document.getElementById("myBtn"); btn.attachEvent("onclick",function(){ alert(this===window); // true });
var btn=document.getElementById("myBtn"); btn.addEventListener("click",function(){ alert(1); },false); btn.addEventListener("click",function(){ alert(2); },false);
var btn=document.getElementById("myBtn"); btn.attachEvent("onclick",function(){ alert(1); }); btn.attachEvent("onclick",function(){ alert(2); });
var btn=document.getElementById("myBtn"); btn.onclick=function(event){ alert(event.type); //click }
var btn=document.getElementById("myBtn"); btn.addEventListener("click",function(event){ alert(event.type); //clcik },false);
var btn=document.getElementById("myBtn"); btn.onclick=function(){ var event=window.event; alert(event.type); //click }
var btn=document.getElementById("myBtn"); btn.attachEvent("onclick",function(event){ alert(event.type); //click });