javascript 中事件冒泡和事件捕获机制的详解


Posted in Javascript onSeptember 01, 2017

javascript 中事件冒泡和事件捕获机制的详解

二者作用:描述事件触发时序问题

事件捕获:从document到触发事件的那个节点,即自上而下的去触发事件---由外到内

事件冒泡:自下而上的去触发事件---由内到外

绑定事件方法的第三个参数,就是控制事件触发顺序是否为事件捕获

true,事件捕获;false,事件冒泡

一般默认false,即事件冒泡

Jquery的e.stopPropagation会阻止冒泡,意思就是到DOM为止,祖先级的事件就不要触发了 

下面是我尝试的例子:

<!DOCTYPE html> 
<html lang="en"> 
<head> 
  <meta charset="UTF-8"> 
  <title>事件冒泡与事件捕获</title> 
  <script> 
    window.onload = function () { 
      document.getElementById("parent").addEventListener("click",function(e){ 
        alert("parent事件被触发,"+this.id); 
      },true) 
      document.getElementById("child").addEventListener("click",function(e){ 
        alert("child事件被触发,"+this.id) 
      },true) 
    } 
 
  </script> 
</head> 
<body> 
<div id="parent"> 
  parent事件 
  <div id="child" class="child"> 
  child事件 
  </div> 
</div> 
</body> 
</html>

 例子里我加了第三个true,是事件捕获。

如果不加则是默认的事件冒泡,这时候事件触发时序就是自内向外

以上就是javascript 中事件冒泡和事件捕获机制的详解,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
jQuery 工具函数学习资料
Apr 29 Javascript
jQuery 中ajax异步调用的四种方式
Jun 28 Javascript
每个程序员都需要学习 JavaScript 的7个理由小结
Sep 03 Javascript
Angular企业级开发——MVC之控制器详解
Feb 20 Javascript
vue.js从安装到搭建过程详解
Mar 17 Javascript
JS+DIV实现的卷帘效果示例
Mar 22 Javascript
vue父子组件的嵌套的示例代码
Sep 08 Javascript
浅谈angular4实际项目搭建总结
Dec 01 Javascript
浅谈React前后端同构防止重复渲染
Jan 05 Javascript
最后说说Vue2 SSR 的 Cookies 问题
May 25 Javascript
微信小程序轮播图swiper代码详解
Dec 01 Javascript
js数组的基本使用总结
Jan 18 Javascript
Vue的Class与Style绑定的方法
Sep 01 #Javascript
Angular中封装fancyBox(图片预览)遇到问题小结
Sep 01 #Javascript
BootStrap模态框和select2合用时input无法获取焦点的解决方法
Sep 01 #Javascript
Angularjs实现上传图片预览功能
Sep 01 #Javascript
JavaScript中使用参数个数实现重载功能
Sep 01 #Javascript
bootstrap-table实现服务器分页的示例 (spring 后台)
Sep 01 #Javascript
jQuery EasyUI结合zTree树形结构制作web页面
Sep 01 #jQuery
You might like
php smarty 二级分类代码和模版循环例子
2011/06/01 PHP
PHP实现webshell扫描文件木马的方法
2017/07/31 PHP
JavaScript入门教程(9) Document文档对象
2009/01/31 Javascript
window.onbeforeunload方法在IE下无法正常工作的解决办法
2010/01/23 Javascript
javascript开发技术大全 第4章 直接量与字符集
2011/07/03 Javascript
jQuery实现渐变下拉菜单的简单方法
2015/03/11 Javascript
使用C++为node.js写扩展模块
2015/04/22 Javascript
js实现仿微博滚动显示信息的效果
2015/12/21 Javascript
JS克隆,属性,数组,对象,函数实例分析
2016/11/26 Javascript
Angular4绑定html内容出现警告的处理方法
2017/11/03 Javascript
讲解vue-router之什么是嵌套路由
2018/05/28 Javascript
使用vue的transition完成滑动过渡的示例代码
2018/06/25 Javascript
vue实现组件之间传值功能示例
2018/07/13 Javascript
详解mpvue中小程序自定义导航组件开发指南
2019/02/11 Javascript
jquery.pager.js分页实现详解
2019/07/29 jQuery
Python安装Imaging报错:The _imaging C module is not installed问题解决方法
2014/08/22 Python
python实现的DES加密算法和3DES加密算法实例
2015/06/03 Python
python 计算数组中每个数字出现多少次--“Bucket”桶的思想
2017/12/19 Python
理论讲解python多进程并发编程
2018/02/09 Python
Python3使用SMTP发送带附件邮件
2020/06/16 Python
由面试题加深对Django的认识理解
2019/07/19 Python
python rsync服务器之间文件夹同步脚本
2019/08/29 Python
Python实现计算长方形面积(带参数函数demo)
2020/01/18 Python
django xadmin action兼容自定义model权限教程
2020/03/30 Python
Python基于paramunittest模块实现excl参数化
2020/04/26 Python
PyCharm2019.3永久激活破解详细图文教程,亲测可用(不定期更新)
2020/10/29 Python
日本钓鱼渔具和户外用品网上商店:naturum
2016/08/07 全球购物
美国知名的家庭连锁百货商店:Boscov’s
2017/07/27 全球购物
中国电子产品批发商/跨境电商/外贸网:Sunsky-online
2020/04/20 全球购物
电气自动化个人求职信范文
2014/02/03 职场文书
机关会计岗位职责
2014/04/08 职场文书
2014年度个人总结范文
2015/03/09 职场文书
化妆品促销活动总结
2015/05/07 职场文书
Python爬虫基础之初次使用scrapy爬虫实例
2021/06/26 Python
Spring Cloud OpenFeign模版化客户端
2022/06/25 Java/Android
Win10服务主机占用内存怎么办?Win10服务主机进程占用大量内存解决方法
2022/09/23 数码科技