事件监听器

“Dom2级事件”定义了两个方法,用于处理指定和删除事件处理程序的操做:addEventListener()和removeEventListener(),包括三个参数(type,listener,boolener);html

若是第三个参数为false,事件会在冒泡阶段调用事件处理程序,若是为true,则会在事件捕获阶段调用程序this

<ul id="tr">
    <li>111111</li>
    <li>111111</li>
    <li>111111</li>
    <li>111111</li>
  </ul>
var oul = document.getElementById("tr");
      oul.addEventListener("click", function () {
          alert(this.id);
      },false)

html不变,调用下removeEventListener();htm

var oul = document.getElementById("tr");
      oul.addEventListener("click", function () {
          alert(this.id);
      },false)

//省略好多代码!
oul.removeEventListener("click", function () {
       alert(this.id);
    },false)//无效

有效方法是什么?blog

var handler = function(){
alert(this.id);
}
oul.addEventListener("click",handler,false);
//省略好多代码
oul.removeEventListener(:click",handler,false);//有效

在IE下的方法是attachEvent()和detachEvent(),html不变事件

var oul = document.getElementById("tr");
    if (oul.addEventListener) {
      oul.addEventListener("click", function () {
          alert(this.id);
      },false)
      }else{
      oul.attachEvent("onclick",function () {
         alert("1");
      })
    }