扫码关注官方订阅号
javascript的stopPropagation()阻止冒泡什么时候使用?也就是我怎么知道哪里要冒泡,哪里不冒泡,哪里需要阻止,哪里不需要阻止?
学习是最好的投资!
比如这个
<a href="https://www.baidu.com"> <p> <span>取消</span> </p> </a>
比如这样的一个需求 点击取消按钮的时候会触发一些js动作,但是不能让这个p产生跳转行为,所以需要在点击取消的时候 阻止冒泡,防止其跳转。
理解错了
阻止冒泡,比如最简单的弹出层,当点击确认提交按钮的时候实际上点击事件是会往上冒泡,而一般我们取消遮罩的时候,都是通过点击弹出层周边的空白区域的。那么问题来了。
<p id="dialog"> <span id="submit">确定</span> </p> $("#submit").on("click",function(e){ e.stopPropagation(); //阻止冒泡,防止冒泡到document层 ... }); $(document).on("click",function(e){ if($(e.target).closest("#dialog").length == 0){ $("#dialog").hide(); } })
不知道这样是否解释清楚
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
比如这个
比如这样的一个需求 点击取消按钮的时候会触发一些js动作,但是不能让这个p产生跳转行为,所以需要在点击取消的时候 阻止冒泡,防止其跳转。
理解错了
阻止冒泡,比如最简单的弹出层,当点击确认提交按钮的时候实际上点击事件是会往上冒泡,而一般我们取消遮罩的时候,都是通过点击弹出层周边的空白区域的。
那么问题来了。
不知道这样是否解释清楚