如有错误,欢迎批评指正!
JavaScript 中的事件处理机制
这个部分比较简单,不详细讲了
jQuery 中的事件处理机制、事件默认行为
事件冒泡
- 浏览器大部分的事件都是支持冒泡的,只有少数事件不支持,比如:focus、blur。针对的,jQuery 中有focusin、focusout支持冒泡。
- 有两种方法可以取消绑定事件的事件冒泡:
- event.stopPropagation(); (该方法对 trigger 自定义事件同样有效。因为从jQuery 1.3 开始,trigger 事件会在 DOM 树上冒泡)
- return false(可以简写 false,它同时可以阻止事件的默认行为)
事件捕获
- jQuery 不支持事件捕获。如需使用,请使用原生 js
事件默认行为
- 取消事件默认行为:event.preventDefault()
代码&总结
$('.wrapper').on('click', function(event) {
event.stopPropagation(); // 方法一:stop.stopPropagation()
});
$('.wrapper').on('click', function() {
return false; // 方法二:return false;
});
$('.wrapper').on('click', false); // 方法二(简写):false
参考链接