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 相关文章推荐
js下获取div中的数据的原理分析
Apr 07 Javascript
屏蔽script注入小例子
Nov 12 Javascript
JS画线(实例代码)
Nov 20 Javascript
JavaScript通过正则表达式实现表单验证电话号码
Mar 07 Javascript
设计模式中的组合模式在JavaScript程序构建中的使用
May 18 Javascript
解析浏览器端的AJAX缓存机制
Jun 21 Javascript
原生JS实现图片网格式渐显、渐隐效果
Jun 05 Javascript
微信小程序 转发功能的实现
Aug 04 Javascript
JS实现图片手风琴效果
Apr 17 Javascript
js实现延迟加载的几种方法详解
Jan 19 Javascript
微信小程序仿今日头条导航栏滚动解析
Aug 20 Javascript
微信小程序indexOf的替换方法(推荐)
Jan 14 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
咖啡知识大全
2021/03/03 新手入门
php array_map array_multisort 高效处理多维数组排序
2009/06/11 PHP
Laravel中如何增加自定义全局函数详解
2017/05/09 PHP
日期 时间js控件
2009/05/07 Javascript
了不起的node.js读书笔记之node的学习总结
2014/12/22 Javascript
深入理解javascript中的 “this”
2017/01/17 Javascript
纯js仿淘宝京东商品放大镜功能
2017/03/02 Javascript
微信小程序利用co处理异步流程的方法教程
2017/05/20 Javascript
jQuery中each循环的跳出和结束实例
2017/08/16 jQuery
微信小程序媒体组件详解(视频,音乐,图片)
2017/09/19 Javascript
swiper 解决动态加载数据滑动失效的问题
2018/02/26 Javascript
jQuery+vue.js实现的多选下拉列表功能示例
2019/01/15 jQuery
vue+高德地图写地图选址组件的方法
2019/05/18 Javascript
开发中常用的25个JavaScript单行代码(小结)
2019/06/28 Javascript
vue路由守卫及路由守卫无限循环问题详析
2019/09/05 Javascript
在layui.use 中自定义 function 的正确方法
2019/09/16 Javascript
VueCli4项目配置反向代理proxy的方法步骤
2020/05/17 Javascript
python使用wxpython开发简单记事本的方法
2015/05/20 Python
Python使用pygame模块编写俄罗斯方块游戏的代码实例
2015/12/08 Python
Python的Tornado框架的异步任务与AsyncHTTPClient
2016/06/27 Python
Python编程实现双击更新所有已安装python模块的方法
2017/06/05 Python
解决Django migrate不能发现app.models的表问题
2019/08/31 Python
python实现静态web服务器
2019/09/03 Python
Python3-异步进程回调函数(callback())介绍
2020/05/02 Python
Django之全局使用request.user.username的实例详解
2020/05/14 Python
django 数据库 get_or_create函数返回值是tuple的问题
2020/05/15 Python
使用phonegap克隆和删除联系人的实现方法
2017/03/31 HTML / CSS
客服实习的个人自我鉴定
2013/10/20 职场文书
公司企业表扬信
2014/01/11 职场文书
师范教师专业大学生职业生涯规划范文
2014/03/02 职场文书
3的组成教学反思
2014/04/30 职场文书
查摆问题对照检查材料
2014/08/28 职场文书
夫妻分居协议书范文
2014/11/26 职场文书
小学中等生评语
2014/12/29 职场文书
卫生保健工作总结2015
2015/05/18 职场文书
浅谈Python基础之列表那些事儿
2021/05/11 Python