我有一个带有DOMContentLoaded事件处理程序的脚本 -
document.addEventListener('DOMContentLoaded', function() {
console.log('Hi');
});
Run Code Online (Sandbox Code Playgroud)
我正异步加载 -
<script async src=script.js></script>
Run Code Online (Sandbox Code Playgroud)
但是,永远不会调用事件处理程序.如果我同步加载它 -
<script src=script.js></script>
Run Code Online (Sandbox Code Playgroud)
它工作正常.
(即使我将DOMContentLoaded事件更改为load事件,也从未调用过.)
是什么赋予了?无论浏览器如何加载脚本,都应该注册事件处理程序,不是吗?
编辑:它无法在Chrome 18.0.1025.11测试工作,但,有DOMContentLoaded,它不会在Firefox 11 Beta版(但load事实并非如此).去搞清楚.
哦伟大的JAVASCRIPT和DOM,祈祷显示我的方式的错误!