事故发生后,我做了一些我认为可能出错的事。
我在同一个元素/事件中添加了两个事件处理程序。
默认行为是什么,或者有一个?
即如果向同一元素添加两个单击事件。他们俩都会被解雇,并且会以什么顺序被解雇。
答案 0 :(得分:1)
如果通过addEventListener或attachEvent绑定事件,它们都会被触发。 例如,订单由绑定顺序决定(代码是用jquery写的):
$('#id').bind('click',function(){
alert(1);
}).bind('click',function(){
alert(2)
});
当您点击该元素时,您将首先看到警报'1',然后是'2';
答案 1 :(得分:1)
以下是规范的说法:
虽然EventTarget上的所有EventListeners都是保证的 由EventTarget收到的任何事件触发,没有 规范是指他们接收的顺序 有关EventTarget上其他EventListeners的事件。
http://www.w3.org/TR/DOM-Level-2-Events/events.html
所以他们都会被解雇,但订单不是 保证 。