JavaScript 中的事件处理程序是否以 FIFO、LIFO 或并行方式触发一个事件?

Ita*_*vka 3 javascript events internals

JavaScript 中的事件处理程序是否以 FIFO、LIFO 或并行方式触发一个事件?

kan*_*gax 6

这很简单。DOM Level 2 事件模块不指定事件侦听器的触发顺序。然而,DOM Level 3 事件模块确实指定了 与注册事件相同的顺序。

\n\n

先注册\xe2\x80\x94先触发。

\n\n

请注意,DOM Level 3 事件模块仍然是一个草案,而 Level 2 模块是一个建议。然而,现代浏览器通常遵循这一 3 级规范草案的语义,而不是旧的 2 级规范。

\n\n

实际上,IIRC,只有IE 不尊重事件侦听器的顺序。所有其他浏览器都将其实现为 FIFO(如 DOM L3 事件中所述)。你也可以在网上找到相关测试:)

\n