Jqeury 阻止事件冒泡

Jqeury 阻止事件冒泡

在子元素和父元素上同时绑定相同的事件,在触发子元素事件的同时,事件会冒泡继续往上会触发父元素的事件

<div id='div1'>12313212
    <li>8iaaaa</li>
    <li>9iaaaa</li>
    <li>10iaaaa</li>
</div>
<script>
$("#div1").click(function(event) {
    alert('show div');
});
$("#div1").on('click', 'li', function(event) {
    alert(‘show li’);
});
</script>

在这时点击li同时会alert 'show li'和 'show div'这就是事件往上冒泡了

但是大部分时候这并不是我们希望的,我们希望点击li的时候只alert 'show li' 这个时候我们应该阻止事件冒泡

在Jquery中可以使用 event.stopPropagation()来阻止事件冒泡

<div id='div1'>12313212
    <li>8iaaaa</li>
    <li>9iaaaa</li>
    <li>10iaaaa</li>
</div>
<script>
$("#div1").click(function(event) {
    alert('show div');
});
$("#div1").on('click', 'li', function(event) {
    alert(‘show li’);
    event.stopPropagation();
});
</script>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • (续jQuery基础(1)) 第5章 DOM节点的复制与替换 (1)DOM拷贝clone() 克隆节点是DOM的常...
    凛0_0阅读 1,360评论 0 8
  • 总结: 鼠标事件 1.click与dbclick事件$ele.click()$ele.click(handler(...
    阿r阿r阅读 1,629评论 2 10
  • 第1章 鼠标事件 1-1 jQuery鼠标事件之click与dbclick事件 用交互操作中,最简单直接的操作就是...
    mo默22阅读 1,295评论 0 6
  • (一)镜子 我记得那是一个很冷...
    相伴因思念而聚阅读 607评论 1 5
  • 人与人之间应该多一些信任,不要背后捅刀子,只有真心把你当做朋友,才会什么都告诉你。不要去试探一个人的底线! 我喜欢...
    荔枝故事阅读 401评论 0 2