DOM事件流(event flow )分为以下三个阶段:

事件捕获阶段
事件捕获(event capturing):意思是当鼠标点击或者触发dom事件的时候,浏览器会从这个事件的元素根节点开始一层一层的传播至当前元素,即我们触发了这个元素,如果它的父元素通过事件捕获方式注册了对应的事件的话,会先触发父元素绑定的事件。
处于目标阶段
事件到达目标节点时,就到了目标阶段,事件在目标节点上被触发
事件冒泡阶段
事件冒泡(dubbed bubbling):与事件捕获恰恰相反,事件冒泡顺序是由内到外进行事件传播,直到根节点,也就是说从目前元素开始一级一级往上进行事件传播。

dom标准事件流的触发的先后顺序为:先捕获再冒泡,即每当我们进行事件触发的时候,先进行捕获事件的触发,再进行冒泡。目前除IE10及以下不支持捕获型事,其他浏览器如IE11、Chrome 、Firefox、Safari等浏览器则同时存在。

不支持冒泡的事件有
UI事件
load, unload,scroll,resize
焦点事件
blur, focus
鼠标事件
mouseleave, mouseenter

支持冒泡的事件有
点击事件
click ,dbclick ,
键盘事件
keydown ,keyup ,
鼠标事件
mousedown ,mousemove ,mouseout
,mouseover ,mouseup ,scroll

DOM事件流(支持冒泡与不支持冒泡事件)相关推荐

  1. js 事件流的事件冒泡和事件捕获与阻止事件传播

    为了方便引入事件流的概念,我们先来说说什么是事件. 事件就是用户或浏览器自身执行的某种动作.换句话说,我们在浏览网页或者 APP 时,通常会在设备上产生很多交互性的操作,例如点击.选择.滚动屏幕.键盘 ...

  2. 事件模型、事件流(冒泡与捕获)、事件代理

    本文原链接:https://www.cnblogs.com/hngdlxy143/p/9068282.html https://www.jb51.net/article/139997.htm 事件模型 ...

  3. JavaScript-浅谈DOM事件流

    什么是事件?(敲黑板) 事件,就是文档或浏览器窗口发生的一些特定的交互瞬间.(by <JavaScript高级程序设计>) 比如鼠标点击,双击,滚动条滑动... 什么是事件流? 先来看一个 ...

  4. 面试题7:Js事件流,事件冒泡(IE事件流)

    事件流 在第四代 Web 浏览器(IE4 和 Netscape Communicator 4)开始开发时,开发团队碰到了一个有意思的问题:页面哪个部分拥有特定的事件呢?要理解这个问题,可以在一张纸上画 ...

  5. JS 事件冒泡整理 浏览器的事件流

    JavaScript与HTML的交互通过事件来实现.而浏览器的事件流是一个非常重要的概念.不去讨论那些古老的浏览器有事件捕获与事件冒泡的争议, 只需要知道在DOM2中规定的事件流包括了三个部分,事件捕 ...

  6. html流动模型,javascript的事件流模型都有什么?

    事件流:当你在页面触发一个点击事件后,页面上不仅仅有一个元素响应该事件而是多个元素响应同一个事件,因为元素是在容器中的.事件发生的顺序就是事件流,不同的浏览器对事件流的处理不同. JavaScript ...

  7. JavaScript事件流

    JS事件流 1. 什么是事件流 ? 2. 事件流模型 2.1) 事件冒泡 2.2) 事件捕获 3. DOM 事件流 1. 什么是事件流 ? 在学习事件流之前我们先看看什么是事件 ? 事件代表文档或浏览 ...

  8. vue学习:事件传递(冒泡和捕获),事件委托,jquery中的事件委托,$event 获取元素,vue事件修饰符

    事件传递 ----冒泡和捕获 DOM事件标准定义了两种事件流,这两种事件流分别是捕获和冒泡. 和许多Web技 术一样,在它们成为标准之前,Netscape和微软各自不同地实现了它们.Netscape选 ...

  9. 使用具有高性能事件流的数据库:关键注意事项

    对于适合事件流的数据库,它需要支持"实时"管理数据随时间的变化--以个位数毫秒或更短的时间测量. 并且可以以每秒数十万或数百万个事件的速度对数据进行更改.(未来还会有更高的利率.) ...

  10. 关于事件流的简单理解

    JS事件 1.首先,什么是事件? ​ JavaScript和Html发生交互是通过事件来实现的,事件,就是文档或浏览器窗口发生一些特定的交互的瞬间 2.什么是事件流? 事件流就是,事件传播的过程. D ...

最新文章

  1. 微软沈向洋:写给AI新潮流——人工智能创作的五点建议
  2. 从unmarshal带json字符串字段的json说起
  3. Cassandra 单机入门例子——有索引
  4. Qt phonon多媒体框架(转)
  5. 动态代理3之代理工厂实现
  6. java jsf_将Java 8日期时间API与JSF和Java EE 7结合使用
  7. 竹签子毕竟是_毕竟是什么程序和功能?
  8. ADO.NET Entity Framework 使用中的经验总结
  9. 如何通过mac地址找到设备_如何通过 Apple Watch 解锁 Mac
  10. QT 定时关机、共享内存、启动浏览器、浏览器前进后退刷新、进度条、设置浏览器标题、QML入门
  11. 使用 Github 作为专用 Nuget 包服务器并共享您的包
  12. 放弃大厂高薪的程序员,涌进体制内
  13. ps使用脚本生成fnt
  14. 微信小程序列表项的右侧带箭头(非常简单)
  15. 中班机器人歌曲_幼儿园机器人教案音乐
  16. java英语流利_day186-2018-12-23-英语流利阅读-待学习
  17. win8.1删除桌面的IE图标
  18. ln(1+x)和ln(1-x)的麦克劳林级数
  19. html div.menus,性感的CSS菜单(Menus)
  20. html的鼠标手怎么去掉,flex htmlText属性和Label设置鼠标手形状

热门文章

  1. 给计算机老师的一封信大学生,大学生给老师的一封信范文满分作文
  2. 港科夜闻|香港科技大学(广州)一期工程核心和配套建筑全面封顶
  3. Android APP全屏显示(去掉顶部状态栏和底部虚拟导航栏)以及使用AndroidAutoSize实现自适应
  4. 使用 | HTML CSS | 制作精美相框
  5. 第八大洲环游记(三):人间胜境新西兰,AI孤岛or方舟?
  6. 12对胸椎对应体表标志_胸部的胸部体表标志
  7. 软件测试常用工具的用途及优缺点比较(详细)
  8. Revit二开——翻转喷头
  9. XMU区域赛选拔赛题解
  10. inteli211网卡linux驱动,Intel i211网卡在server2016中无驱动的解决方案