所以我常常将jquery文档就绪函数放在我的html底部,只是为了让它在页面的所有元素加载之前运行。我已经厌倦了我的功能无法工作,因为资源没有在页面上完成加载,jquery.ready一直说这些元素在它们不合时完成加载!谁想要设置一个300毫秒的超时,以便他们的功能在jquery.ready之后稍微等一下?
答案 0 :(得分:11)
使用.ready()
在DOM准备好编写脚本时执行操作。
$(document).ready(function(){
});
使用.load()
在加载“页面”(包括文件和图像的资源)时执行操作。
$(window).load(function(){
});
答案 1 :(得分:6)
jQuery.ready在DOM元素准备就绪时触发,而不是在脚本/图像/等完成加载时触发。
关于.ready()的文档说明:
指定在DOM完全加载时要执行的函数。
答案 2 :(得分:3)
正如simshaun所说,当DOM准备就绪时,jQuery.ready会激活 - 而不是像图像这样的东西准备好了。如果要等待加载图像,则必须使用以下代码:
$(window).load(
function() {
// do stuff here
}
);
答案 3 :(得分:0)
$。ready在DOM加载时运行,而不是在页面完全加载时(图像等...)
也许你正在寻找
$(window).load(function(){ // 东西 });
答案 4 :(得分:0)
来自jQuery API文档:
虽然JavaScript在呈现页面时提供了用于执行代码的加载事件,但在完全接收到所有资产(如图像)之前,不会触发此事件。在大多数情况下,只要完全构造DOM层次结构,就可以运行脚本。传递给.ready()的处理程序保证在DOM准备好后执行,因此这通常是附加所有其他事件处理程序并运行其他jQuery代码的最佳位置。使用依赖于CSS样式属性值的脚本时,在引用脚本之前引用外部样式表或嵌入样式元素非常重要。
因此,如果您需要所有来完成加载,请使用load事件,但如果您只需要准备好DOM,请使用ready事件。
答案 5 :(得分:0)
.ready()
函数运行。要确保加载二进制数据,您可以使用.load()
函数