繁体   English   中英

Javascript事件优先级

[英]Javascript Event Priority

通过在javascript中添加事件的不同方式,它们中的任何一个都像css类一样优先吗? 例如,在添加addEventListener之前,内联onclick甚至会一直触发吗?

如果没有,有没有办法给予事件优先权?

内联onclick处理程序将作为绑定在DOM加载

而任何你添加.on.addEventListener将不得不等待DOM元素第一次加载。

见这里: http//jsfiddle.net/DmxNU/

你的HTML

<a href="#" onclick="console.log('hello');">click</a>

你的js(在这种情况下是jQuery)

$(function() {
    $("a").click(console.log.bind(console, "world"));
});

产量

hello
world

说明

我不确定这会记录在哪里,但请这样考虑一下。 如果您要使用DOM API查询元素然后添加事件侦听器,则必须首先加载该元素。 如果该元素已包含onclick属性,则该属性将首先附加。

JavaScript事件不会占用任何优先级。 何时触发事件并将其添加到事件队列中并尽快执行。

您可以声称onclick attribut事件将始终首先触发是一般规则,并且始终是真的,但并不是因为它们是优先级的。

引自@Kevin B的评论

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM