有人可以解释一下,为什么事件处理程序的执行顺序有所不同,具体取决于它们的附加方式?在下面的示例中,我使用.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);
Run Code Online (Sandbox Code Playgroud)
如果我取消注释on();版本,一切都按预期工作 - jQuery处理事件的方式是否与普通相反JavaScript?