摘录自MDN对事件冒泡和捕捉的解释

Posted 小白历险记~

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了摘录自MDN对事件冒泡和捕捉的解释相关的知识,希望对你有一定的参考价值。

 

 

 

当一个事件触发了一个有父元素的元素(例如我们的<video>时),现代浏览器运行两个不同的阶段 - 捕获阶段和冒泡阶段。

在捕获阶段:

  • 浏览器检查元素的最外层祖先(<html>)是否在捕获阶段中注册了一个onclick事件处理程序,如果是,则运行它。
  • 然后,它移动到<html>中的下一个元素,并执行相同的操作,然后是下一个元素,依此类推,直到到达实际点击的元素。

在冒泡阶段,恰恰相反:

  • 浏览器检查实际点击的元素是否在冒泡阶段中注册了一个onclick事件处理程序,如果是,则运行它
  • 然后它移动到下一个直接的祖先元素,并做同样的事情,然后是下一个,等等,直到它到达<html>元素。

技术分享图片

在现代浏览器中,默认情况下,所有事件处理程序都在冒泡阶段进行注册。

 

以上是关于摘录自MDN对事件冒泡和捕捉的解释的主要内容,如果未能解决你的问题,请参考以下文章

冒泡事件与事件委托

js事件冒泡和捕捉

js事件冒泡与捕捉解析

事件冒泡和事件捕获

JavaScript中的事件冒泡?事件传播的解释

小程序的事件机制--捕捉与回调,catch与bind