jquery 冒泡是什么

木君言 2周前 7浏览 0评论

JQuery中的事件冒泡是指,当元素上发生某个事件时,其所在的父元素和祖先元素也会同时收到此事件并做出相应的响应。这种事件传递方式就好比放在水中的泡泡,从下往上逐渐膨胀,从而扩散到整个页面。

$("#child").click(function(){
    alert("child clicked");
});
$("#parent").click(function(){
    alert("parent clicked");
});

在这个例子中,如果我们点击了id为"child"的子元素,不仅子元素会响应click事件并弹出对话框,它的父元素也会响应click事件,并且也会弹出对话框,因为事件从子元素冒泡到了父元素。

有时候我们需要阻止事件冒泡,比如点击按钮时,不希望事件向父元素传播,可以用以下代码实现:

$("#button").click(function(event){
    event.stopPropagation();
    alert("button clicked");
});

其中,event.stopPropagation();用来阻止事件冒泡。这样就只会响应按钮的click事件,不会传播到父元素。