1、什么是事件冒泡,他是如何工作的
在一个对象上触发某类事件(比如单击onclick事件),这个事件会向这个对象的父级对象传播,从里到外,直至它被处理(父级对象所有同类事件都将被激活),或者它到达了对象层次的最顶层,即document对象(有些浏览器是window)
2、阻止事件冒泡的方法
2.1) w3c 方法是: event.stopPropagation0; 事件处理过程中,阻止冒泡事件,但不会阻止默认行为
(跳转至超链接)
2.2) IE 则是使用event.cancelBubble = true阻止事件冒泡
2.3) returm false; jq 里面事件处理过程中,阻止冒泡事件,也阻止默认行为(不跳转超链接)封装方法:
function bubbles(e){
var ev= e II window .event;
if(ev && ev.stopPropagation) {
//非IE浏览器
ev.stopPropagation);
} else {
//IE浏览器(IE11以下)
ev.cancelBubble = true;
}
console.log("最底层盒子被点击了")
阻止默认行为:
什么是事件冒泡?它是如何工作的?如何阻止事件冒泡、默认行为? (前端面试题)
于 2022-12-20 00:05:29 首次发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)