reactjs - 什么是 React ...Capture 事件?

标签 reactjs dom

react audiovideo 标记上的每个事件都有一个重复项,例如它具有 onCanPlayThrough 属性和 onCanPlayThroughCapture也是如此。它们在浏览器中的行为完全相同。

我们是否需要使用...Capture事件而不是标准事件?他们的主要想法是什么?我在哪里可以找到有关它们的信息。

最佳答案

React 文档 here 对此进行了介绍。 ,尽管很容易错过:

The event handlers below are triggered by an event in the bubbling phase. To register an event handler for the capture phase, append Capture to the event name; for example, instead of using onClick, you would use onClickCapture to handle the click event in the capture phase.

DOM 事件有 multiple phases (见下图),分别是(按顺序):

  • 捕捉
  • 目标
  • 冒泡

通常我们使用目标或冒泡(addEventListenerfalse 第三个参数[默认]),但在极少数情况下您希望 Hook 到捕获阶段相反(第三个参数 = true)。 ...Capture 处理程序可以让您做到这一点。

event flow showing capture from window to target element, then target at element, then bubbling from element back up to window

关于reactjs - 什么是 React ...Capture 事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42439541/

相关文章:

reactjs - Office UI Fabric React TagPicker 新项目

javascript - 在 JavaScript 中向对象的特定位置添加键

javascript - 将元素内的 Html DOM 作为字符串传递给 AngularJS Controller

javascript - 经常更新值时闪烁

node.js - Create-React-App 需要 Node 4.0 或更高版本

javascript - Apollo-client (react) - 创建突变的更新 - "Can' t 在对象 (ROOT_QUERY) 上找到字段 Fund({})"

javascript - 在线考试进行时如何限制用户不离开考试窗口?

javascript - 可以在浏览器不阻塞的情况下添加大量 DOM 节点吗?

javascript - 如何只打印outerHTML

javascript - 如何在浏览器窗口中显示此 javascript 片段的结果?