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


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 相关文章推荐
bgsound 背景音乐 的一些常用方法及特殊用法小结
May 11 Javascript
js Date概念详细介绍
Nov 22 Javascript
js动态添加表格数据使用insertRow和insertCell实现
May 22 Javascript
Express.JS使用详解
Jul 17 Javascript
jQuery实现可用于博客的动态滑动菜单完整实例
Sep 17 Javascript
ztree获取选中节点时不能进入可视区域出现BUG如何解决
Dec 03 Javascript
JS+JSP通过img标签调用实现静态页面访问次数统计的方法
Dec 14 Javascript
js模仿微信朋友圈计算时间显示几天/几小时/几分钟/几秒之前
Apr 27 Javascript
基于JavaScript实现弹幕特效
Aug 27 Javascript
vue的toast弹窗组件实例详解
May 14 Javascript
浅谈AngularJS中$http服务的简单用法
May 15 Javascript
vue-cli基础配置及webpack配置修改的完整步骤
Oct 20 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
Fatal error: Call to undefined function curl_init()解决方法
2010/04/09 PHP
PHP通过正则表达式下载图片到本地的实现代码
2011/09/19 PHP
php fsockopen伪造post与get方法的详解
2013/06/14 PHP
PHP中的替代语法简介
2014/08/22 PHP
php中使用websocket详解
2016/09/23 PHP
php制作基于xml的RSS订阅源功能示例
2017/02/08 PHP
php微信开发之图片回复功能
2018/06/14 PHP
javascript document.images实例
2008/05/27 Javascript
jquery ajax学习笔记2 使用XMLHttpRequest对象的responseXML
2011/10/16 Javascript
设置checkbox为只读(readOnly)的两种方式
2013/10/11 Javascript
Jquery实现侧边栏跟随滚动条固定(兼容IE6)
2014/04/02 Javascript
JavaScript简单表格编辑功能实现方法
2015/04/16 Javascript
基于javascript实现彩票随机数生成(升级版)
2020/04/17 Javascript
JS实现的简单拖拽功能示例
2017/03/13 Javascript
用node和express连接mysql实现登录注册的实现代码
2017/07/05 Javascript
JavaScript实现三级联动效果
2017/07/15 Javascript
vue-cli常用设置总结
2018/02/24 Javascript
详解jquery和vue对比
2019/04/16 jQuery
angular4应用中输入的最小值和最大值的方法
2019/05/17 Javascript
[01:04:30]Fnatic vs Mineski 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
python生成IP段的方法
2015/07/07 Python
Python函数式编程
2017/07/20 Python
恢复百度云盘本地误删的文件脚本(简单方法)
2017/10/21 Python
python基于twisted框架编写简单聊天室
2018/01/02 Python
python实现拓扑排序的基本教程
2018/03/11 Python
对python程序内存泄漏调试的记录
2018/06/11 Python
python基础教程之while循环
2019/08/14 Python
Python列表删除元素del、pop()和remove()的区别小结
2019/09/11 Python
通过css3动画和opacity透明度实现呼吸灯效果
2019/08/09 HTML / CSS
幼师自荐信范文
2013/10/06 职场文书
大学新闻系求职信
2014/06/03 职场文书
员工激励培训演讲稿
2014/09/16 职场文书
Django实现在线无水印抖音视频下载(附源码及地址)
2021/05/06 Python
python中opencv实现图片文本倾斜校正
2021/06/11 Python
MySQL索引是啥?不懂就问
2021/07/21 MySQL
JavaScript架构搭建前端监控如何采集异常数据
2022/06/25 Javascript