if(document.readyState === "complete"){
将检测加载是否已经完成。
如果尚未完成加载,您可以轻松使用 else 然后放入 load 事件处理程序。类似于以下内容:
if(document.readyState === "complete"){
// do stuff
}else{
// attach load handler
}
我喜欢做的是定义一个pageLoaded
类型函数,我可以在以后使用我的代码运行它,这样我可以在页面已经加载时立即调用它,或者让加载处理程序在页面加载触发时调用它。就像是:
var pageLoaded = function(){alert("Page is ready!");}
if(document.readyState === "complete"){
pageLoaded()
}else{
// attach load handler, calls pageLoaded()
}
当然,由于您将问题标记为 jQuery,您总是可以将所有代码包装在 jQuery 方便的花花公子就绪函数简写中:
$(function(){
// do stuff
});
这会将您的匿名函数传递给 jQuery,如果与上述 vanilla javascript 不同,它将执行非常相似的操作。