传统的方式
element.onclick =
功能(e){
…
};
1。传统装订的优点
它非常简单和稳定,以确保它在同一个
浏览器中使用。
在
处理事件时,此关键字引用当前元素,这非常有用。
2。传统束缚的缺陷
传统的
方法只在事件气泡中
运行,而不是在捕获和气泡中运行。
一个元素只能一次绑定一个事件处理
函数。新绑定的事件处理函数覆盖旧的事件处理函数。
事件对象
参数(E)仅对IE浏览器可用。
W3C
模式 element.addeventlistener(听到咔哒声,功能(e){
…
},假);
1的优点。W3C的结合
该方法也
支持捕获和冒泡事件处理阶段。事件相取决于最终的参数
设置:虚假addEventListener(鼓泡)或真(捕获)。
在事件处理函数中,这个关键字引用当前元素。
事件对象总是可以由处理函数的第一个参数(e)捕获。
您可以为同一个元素绑定许多事件,而不会覆盖以前绑定的事件。
2的缺点。W3C的结合
IE不支持,你必须使用IE的attachevent函数代替。
IE模式
element.attachevent('onclick,函数(){(){
…
});
1的优点。IE模式
您可以为同一个元素绑定许多事件,而不覆盖以前绑定的事件。
2的缺点。IE模式
IE只支持事件捕获冒泡阶段
事件监视器函数中的这个关键字指向窗口对象,而不是当前元素(IE的一个巨大缺陷)。
事件对象只存在window.event参数
事件必须在ON,形式为例,而不是点击onclick
只有IE是可用的。你必须使用W3C的addEventListener非IE浏览器
Dean Edwards方案(AddEvent / removeevent图书馆)
1的优点。AddEvent
你可以在所有浏览器中
工作,甚至在没有任何支持的老浏览器中工作。
该关键字可用于所有绑定函数,指向当前元素。
中和所有特定于浏览器的函数,防止浏览器的
默认行为,防止事件冒泡。
不管浏览器的
类型如何,事件对象总是作为第一个对象传递。
2。AddEvent的缺点
只在冒泡阶段工作(因为它使用传统的事件绑定方式)
上面简单
介绍了Javascript事件绑定的常用方法及其优缺点。