【读书笔记】DOM0级 DOM2级 IE三种事件处理程序的区别

时间:2022-02-23 19:46:39

1、DOM0级事件处理程序: 

btn.onclick = function () {

alert(this.id);

}

特点:每个事件只支持一个处理程序。


2、DOM2级事件处理程序(IE9+也支持),包括addEventListener()和removeEventListener():

var handler = functiont () {

alert(this.id);

}

btn.addEventListener('click', handler);

btn.removeEventLister('click',handler); //若绑定的匿名函数则无法移除

特点:可添加多个事件处理程序;事件触发时按照事件添加的顺序触发;事件处理程序的作用域为其所属元素的作用域,this对象等于btn元素。


3、IE事件处理程序,包括attachEvent()与detachEvent(),用法与DOM2级类似,不过传入的第一个参数为'onclick'而非DOM2的'click'。

特点:可添加多个事件处理程序;事件触发时按照事件添加的相反顺序触发;事件处理程序的作用域为全局作用域,this对象等于window。