为了账号安全,请及时绑定邮箱和手机立即绑定

第一个click没有阻止冒泡,那为什么它只冒泡到外层div,没有冒泡到body

//为 <span> 元素绑定 click 事件 
    $("span").click(function() {
        $("#msg").html($("#msg").html() + "<p>内层span元素被单击</p>");
    });

//点击span,结果只显示了 内层span和外层div被单击,为什么没有显示body被单击

正在回答

4 回答

https://img1.sycdn.imooc.com//5d429db9000138dd11290784.jpg我在里面多加了几层只有遇到div的时候才会阻止冒泡,所以是冒不到body的

0 回复 有任何疑惑可以回复我~

因为他冒泡到div层 就被div 层点击事件 event.stopPropagation() 阻止冒泡啦~

0 回复 有任何疑惑可以回复我~

event.stopPropagation() 方法:阻止事件冒泡

事件是可以冒泡的,为防止事件冒泡到DOM树上,也就是不触发的任何前辈元素上的事件处理函数

就是说不会触发到div的父级以上,如果是在span绑定的click后面加的话div都不会显示被点击

0 回复 有任何疑惑可以回复我~

外层div   写了这个event.stopPropagation(); //阻止事件冒泡

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

第一个click没有阻止冒泡,那为什么它只冒泡到外层div,没有冒泡到body

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信