【发布时间】:2012-02-18 05:48:04
【问题描述】:
有人能解释一下为什么事件处理程序的执行顺序会根据它们的附加方式而有所不同吗?在下面的示例中,我使用.on() 和.addEventListener() 方法来处理不同DOM 元素上的特定事件。
jsfiddle:http://jsfiddle.net/etsS2/
我认为在这个特定示例中,事件处理程序的执行顺序将取决于 event-bubbling - 所以从原始事件 target 开始,一直到 document 元素。
document.getElementById('outer').addEventListener('mouseup', function (event) {
//$('#outer').on('mouseup', function (event) {
alert('This alert should not show up!');
}, false);
如果我取消注释 on(); 版本,一切都会按预期工作 - jQuery 处理事件的方式与普通 JavaScript 不同吗?
【问题讨论】:
标签: javascript jquery event-handling