我无法在Mozilla的文档中找到它。假设我编写了一个在keypress上使用addEventListener的扩展。如果网页包含在keypress(或keydown)上调用addEventListener的JS代码,那么执行优先级是多少?是否保证我的分机首先收到活动?
答案 0 :(得分:1)
事件首先经历“捕获”阶段,然后是“冒泡”阶段。如果你使用捕获阶段(通过将true
作为addEventListener
的最后一个参数),那么如果页面上的那个使用冒泡阶段,那么你的监听器将在页面上的监听器之前被调用。我想如果您不知道它在页面上的工作方式,那么您可以将其附加到页面无法访问的内容(例如browser
对象,甚至是gBrowser
)然后你会确定你的第一个。见http://www.w3.org/TR/DOM-Level-3-Events/#event-flow