我有一个小的javascript util,它可能会被预加载,延迟加载或按需加载。当它启动时,它会向DOM添加一些内容。它是低优先级的,如果它被预加载,它可以等待onload事件在运行之前触发,但是如果它是延迟加载的,它可以继续并立即运行。
目前正在检查是否存在页脚元素的ID以确定它是否应该向窗口onload事件添加事件侦听器或者只是运行。例如
if ( document.getElementById("footer") ){
Init()
} else {
if (window.addEventListener){...}
else if (window.attachEvent){...}
}
虽然目前正在运作,但这显然是一个非常糟糕的解决方案。 关于改进这个的任何非jQuery相关建议都感激不尽!
答案 0 :(得分:11)
您应该使用document.readyState
属性:
if (document.readyState === 'complete') {
//do stuff
}