第47天 请说说你对事件冒泡机制的理解?
Activity
rocky-191 commentedon Jun 2, 2019
事件流的执行顺序,捕获阶段-》目标阶段-》冒泡阶段。冒泡从里到外的执行。
<div><span>点我</span></div>
,在div上定义的事件,点击span的时候会触发span上面绑定的事件,之后也会触发外面div上面的事件,这就是冒泡。simonliang20 commentedon Jun 2, 2019
事件传播的过程分为捕获阶段、目标阶段和冒泡阶段。冒泡阶段是从目标到window对象的过程。事件默认是冒泡的,当父元素添加监听事件,点击子元素后,父元素上的事件会被触发,这就是典型的冒泡。
myprelude commentedon Jun 13, 2019
对事件冒泡机制的理解:
不是很清楚题目什么意思,冒泡过程就是:事件源触发事件后,会将事件反馈给他的父元素。。一直到document。这个过程中如果父元素也有对应的evet.type的话也会触发。为了防止触发可以通过evet.target来判读或者直接event.stopPropagation()阻止事件冒泡。
Vi-jay commentedon Jul 31, 2019
dangjian commentedon Sep 29, 2019
事件流

按照W3C事件模型,事件流按照次序依次为
捕获阶段
,目标阶段
,冒泡阶段
。如果事件绑定时候,禁止了冒泡,则事件流会停止在目标阶段。先说两个有关DOM事件流的概念
事件冒泡
和事件捕获
。开发者可以自己决定事件处理注册到捕获阶段,或者是冒泡阶段。
element1.addEventListener('click',doSomething2,true)
如果最后一个参数为true,则注册到捕获阶段。事件委托(事件代理)
介绍完上面的,事件委托是时候登场了。事件委托简单说起来就是利用事件冒泡,只指定一个事件处理程序,就可以管理某一类型的所有事件。
blueRoach commentedon Jul 23, 2020
事件冒泡指的是,当你对某个元素进行事件操作时,会向上(父级元素)一直触发,就是冒泡一样。
阻止冒泡 event.stopropagation()
Alex-Li2018 commentedon Aug 11, 2020
事件流的问题
HNHED commentedon Sep 4, 2021
事件冒泡
IE的事件流叫事件冒泡,即事件开始时由最具体的元素(文档中嵌套最深的那个节点)接收,然后逐级向上传播到较为不具体的节点(文档)
事件捕获
事件捕获的思想是不太具体的节点应该更早接收到事件,而更具体的节点应该最后接收到事件
xiaoqiangz commentedon Jun 6, 2022
事件流的过程包括 捕获阶段、目标阶段、冒泡阶段。 事件冒泡可以理解为当源dom触发事件后会一直向它的父级传播,直到document。 阻止冒泡可以使用 event.stopPropagation()来阻止。
never123450 commentedon Sep 14, 2023
事件冒泡是 JavaScript 中的一种事件传播机制。当一个元素触发了某个事件时(如点击事件),该事件将从触发元素开始向上层元素逐级传播,直到传播到文档根节点。这种传播过程就是事件冒泡。
事件冒泡的机制使得我们可以在父元素上捕获子元素触发的事件。例如,当子元素被点击时,父元素也会触发相应的点击事件。这样可以方便地对整个元素树进行事件处理,而不需要为每个子元素都添加事件监听器。
在事件冒泡过程中,可以通过调用事件对象的
stopPropagation()
方法来阻止事件继续向上层元素传播。这样可以避免事件被更高层的元素捕获和处理。要注意的是,并非所有的事件都支持事件冒泡机制。例如,
focus
和blur
事件不会冒泡。但是大多数常见的事件(如点击、键盘事件等)都支持事件冒泡。通过理解事件冒泡机制,我们可以更好地处理和管理事件,实现更灵活和可扩展的交互效果。
panpanxuebing commentedon Dec 11, 2024
先进入捕获阶段,从祖先节点到触发节点
再进入冒泡阶段,从触发节点到祖先节点