事件委托与阻止冒泡阻止其父元素事件触发


Posted in Javascript onSeptember 02, 2014

简单说下事件委托与阻止冒泡

html:

<ul class="clearfix" data-type="cityPick"> 
<li class="active_sort_opts" data-id="0">全部</li> 
<li data-id="88">纽约</li> 
<li data-id="119">洛杉矶</li> 
<li data-id="138">拉斯维加斯</li> 
<li data-id="84">夏威夷</li> 
<li data-id="120">旧金山</li> 
<li data-id="105">奥兰多</li> 
<li data-id="118">西雅图</li> 
</ul>

js:

$("ul[data-type='cityPick']").on('click',function(){ 
alert("父元素ul被点击"); 
}); 
$("ul[data-type='cityPick']").on('click','li',function(){ 
alert("子元素li被点击"); 
});

当点击具体的li元素时,发现ul的事件也被触发了,这是我们不想看到的。

解决:

$("ul[data-type='cityPick']").on('click',function(){ 
alert("父元素ul被点击"); 
}); 
$("ul[data-type='cityPick']").on('click','li',function(e){ 
e.stopPropagation();//阻止冒泡 
alert("子元素li被点击"); 
});

加一句阻止冒泡即可。

Javascript 相关文章推荐
JS和JQUERY获取页面大小,滚动条位置,元素位置(示例代码)
Dec 14 Javascript
jquery等待效果示例
May 01 Javascript
JavaScript 实现完美兼容多浏览器的复制功能代码
Apr 28 Javascript
jQuery使用$获取对象后检查该对象是否存在的实现方法
Sep 04 Javascript
深入理解Node.js中的进程管理
Mar 13 Javascript
详解redux异步操作实践
Aug 15 Javascript
Vue瀑布流插件的使用示例
Sep 19 Javascript
详解vue父子组件关于模态框状态的绑定方案
Jun 05 Javascript
layui使用表格渲染获取行数据的例子
Sep 13 Javascript
js实现固定区域内的不重叠随机圆
Oct 24 Javascript
JS实现json数组排序操作实例分析
Oct 28 Javascript
eslint+prettier统一代码风格的实现方法
Jul 22 Javascript
解决jquery版本冲突的有效方法
Sep 02 #Javascript
ajaxFileUpload.js插件支持多文件上传的方法
Sep 02 #Javascript
引用其它js时如何同时处理多个window.onload事件
Sep 02 #Javascript
JS中自定义定时器让它在某一时刻执行
Sep 02 #Javascript
理解javascript中的回调函数(callback)
Sep 02 #Javascript
详解js闭包
Sep 02 #Javascript
jquery delay()介绍及使用指南
Sep 02 #Javascript
You might like
如何使用PHP批量去除文件UTF8 BOM信息
2013/08/05 PHP
php判断GIF图片是否为动画的方法
2020/09/04 PHP
Thinkphp关闭缓存的方法
2015/06/26 PHP
一个简单的php MVC留言本实例代码(必看篇)
2016/09/22 PHP
解决PHP 7编译安装错误:cannot stat ‘phar.phar’: No such file or directory
2017/02/25 PHP
php中str_pad()函数用法分析
2017/03/28 PHP
jQuery 连续列表实现代码
2009/12/21 Javascript
JSCode all of Brower 全局屏蔽网页右键功能 具体实现
2013/06/05 Javascript
js保留两位小数使用toFixed实现
2013/07/29 Javascript
探讨JavaScript中声明全局变量三种方式的异同
2013/12/03 Javascript
js中的如何定位固定层的位置
2014/06/15 Javascript
详解JavaScript编程中的数组结构
2015/10/24 Javascript
Bootstrap零基础入门教程(三)
2016/07/18 Javascript
AngularJS实现用户登录状态判断的方法(Model添加拦截过滤器,路由增加限制)
2016/12/12 Javascript
Vue.js中兄弟组件之间互相传值实例
2017/06/01 Javascript
JavaScript实现提交模式窗口后刷新父窗口数据的方法
2017/06/16 Javascript
AngularJS实现的输入框字数限制提醒功能示例
2017/10/26 Javascript
浅谈webpack下的AOP式无侵入注入
2017/11/12 Javascript
element-ui多文件上传的实现示例
2019/04/10 Javascript
nodejs通过钉钉群机器人推送消息的实现代码
2019/05/05 NodeJs
通过实例了解JS执行上下文运行原理
2020/06/17 Javascript
vue 动态给每个页面添加title、关键词和描述的方法
2020/08/28 Javascript
简单了解python中对象的取反运算符
2019/07/01 Python
Keras使用tensorboard显示训练过程的实例
2020/02/15 Python
pyinstaller将含有多个py文件的python程序做成exe
2020/04/29 Python
Python常用GUI框架原理解析汇总
2020/12/07 Python
anello泰国官方网站:日本流行包包品牌
2019/08/08 全球购物
介绍一下except的用法和作用
2015/01/22 面试题
机关党员2014全国两会学习心得体会
2014/03/10 职场文书
旅行社各个岗位职责
2014/03/15 职场文书
优秀党员自我评价范文
2014/09/15 职场文书
学生党员批评与自我批评
2014/10/15 职场文书
2016圣诞节贺卡寄语
2015/12/07 职场文书
中国梦宣传标语口号
2015/12/26 职场文书
《天使的翅膀》读后感3篇
2019/12/20 职场文书
TensorFlow中tf.batch_matmul()的用法
2021/06/02 Python