事件表中的同步/异步是什么意思

问题描述 投票:0回答:1

我在 https://www.w3.org/TR/uievents 发现了一个有趣的事件表。但是,我对同步/异步类别不熟悉。

活动类型 同步/异步 冒泡阶段 值得信赖的活动 目标类型 DOM 接口 可取消 默认操作
点击 同步 是的 元素 指针事件 是的 Varies:对于具有关联激活行为的目标,执行激活行为;对于可聚焦目标,给予元素焦点。
错误 异步 没有 窗口、元素 活动 没有
输入 同步 是的 元素 输入事件 没有
加载 异步 没有 窗口、文档、元素 活动 没有
鼠标悬停 同步 是的 元素 鼠标事件 是的
鼠标松开 同步 是的 元素 鼠标事件 是的
选择 同步 是的 元素 活动 没有
卸载 同步 没有 窗口、文档、元素 活动 没有
轮子 异步 是的 元素 轮盘事件 是的 滚动(或缩放)文档

有人可以解释一下这个类别的含义吗?

例如:

Sync
点击事件和
Async
滚轮事件有什么区别?

javascript dom events w3c
1个回答
0
投票

曾经有一个章节对此进行了解释,您仍然可以在同一文档的上一版本中看到它

上面写着

事件可以同步或异步调度。

同步事件(“同步事件”)被视为如同它们 位于先进先出模型中的虚拟队列中,顺序为 相对于其他事件的时间发生顺序, DOM 的变化以及用户交互。本期的每一个活动 虚拟队列被延迟,直到前一个事件完成为止 传播行为,或者被取消。一些同步事件是由 特定的设备或进程,例如鼠标按钮事件。这些 事件由 事件控制 订购 为该组事件定义的算法,并且用户代理将 按定义的顺序调度这些事件。

异步事件(“异步事件”)可以分派为 动作的结果已完成,与其他无关 事件、DOM 中的其他更改以及用户交互。

[示例3] 在加载文档期间,将解析并执行内联脚本元素。这 load 事件是 排队等待在脚本元素处异步触发。然而, 因为它是一个异步事件,所以它的顺序与其他事件相关 文档加载期间触发的同步事件(例如 DOMContentLoaded 事件来自 [HTML5]) 不保证。

它已作为 https://github.com/w3c/uievents/issues/372 的一部分与其父部分一起删除,这表明父部分已经主要由 DOM 规范涵盖。然而,确实,关于同步/异步的特定位也不存在,因此这个概念不再受到任何支持。

您可能想在问题中让他们知道(该问题仍悬而未决)。

© www.soinside.com 2019 - 2024. All rights reserved.