document.addEventListener('DOMContentLoaded', () => {
});
我读到这个事件监听器确保,对于常规脚本,JS 不会引用尚未加载的节点。内容在 DOMContentLoaded 被触发后执行)。我也有read一个模块在
DOMContentLoaded
之前执行被触发(由于它内置的 defer
属性)。我使用的模块似乎不需要
DOMContentLoaded
听众。我可以确认DOMContentLoaded
他们不需要监听器来正确访问节点吗?另外,我想不出如何测试这个,所以我在这里问。如果你知道我怎么做,请分享!
最佳答案
我认为这篇文章应该为您清除一些东西,它有很棒的图片https://flaviocopes.com/javascript-async-defer/#the-position-matters
当defer
存在,它指定脚本在页面完成解析后执行,因此您可以保证脚本可以访问没有 DOMContentLoaded
的节点
关于javascript - 模块是否会阻止使用 DOMContentLoaded 监听器的需要?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63420821/