我有一个生成HTML块的JavaScript。此脚本有时在运行时调用,有时在加载文档之前调用。我想要一个能够判断文档是否准备就绪的脚本。如果是,则生成HTML,否则,添加document.ready()函数。什么是jQuery知道文档是否已加载的最佳方式?
答案 0 :(得分:7)
$(document).ready(
function() {
//code to execute once the page is loaded
}
);
答案 1 :(得分:4)
答案 2 :(得分:2)
您可以使用ready事件在加载DOM后运行
$(document).ready( function() {
// your function
});
或加载事件,等待绝对一切都加载
$(document).load( function() {
// your function
});
除非你知道你需要使用load事件,否则我会使用ready命令(我认为是DOMContentLoaded事件)。
答案 3 :(得分:1)
始终将$ HTML生成代码包装在$(document).ready()中是安全的。如果文档已经准备就绪,则会立即执行新注册的$(document).ready()回调。
答案 4 :(得分:0)
http://www.learningjquery.com/2006/09/introducing-document-ready
$(document).ready(function() {
// put all your jQuery goodness in here.
});
答案 5 :(得分:0)
$(function() {
// document has loaded at this point
});
答案 6 :(得分:0)
我也碰到了这个。我有一个自动隐藏机制,在加载其余文档时会触发得太快(如果是第一次显示的话)。通过添加一个在document.ready()上翻转为TRUE的全局布尔值,我可以轻松解决问题。
在我的JS顶部:
var documentReady = false;
我的onReady功能:
$(document).ready(function(){
documentReady = true;
...
}