根据接受的答案:
财产的价值readyState
总是"interactive"
当DOMContentLoaded
被解雇的时候。
错误的
它具有以下任一项:
文档 。就绪状态 参考。
"loading"
在 Document 加载时返回,"interactive"
一旦完成解析但仍在加载子资源,以及"complete"
一旦加载。
如果在Document 具有状态readystatechange
之前附加一个事件侦听器,interactive
则可以单独检查interactive
,例如 MDN 中的示例。然后,如果它到达它,就会捕获该状态。
但是,如果在稍后阶段检查状态,则不是。
同样来自 MDN 的示例,这些是相等的:
document.onreadystatechange = function () {
if (document.readyState === 'interactive') {
initApplication();
}
}
document.addEventListener("DOMContentLoaded", function () {
initApplication();
});
这并不意味着:
if (document.readyState !== 'loading')
assert(document.readyState === 'interactive')
答案表明了这一点。
话说:
document.addEventListener("DOMContentLoaded", ...
永远不会等于:
window.addEventListener('load', ...