整个页面加载完后启动jquery脚本?

4
我该如何防止我的jQuery脚本在整个页面加载之前运行?(包括图像...)。谢谢!
1个回答

11

你可以使用以下替代方案而不是 $(document).ready(/* ... */);

$(window).load(
    function() {

});

或者你可以直接在页面底部放置一个 script 块,这样当脚本被执行时,整个 DOM 已经加载完成了。


但这并不意味着每个图像都已加载。 只是DOM。 - Sven Klouem
一般来说,如果您不需要脚本在页面加载后执行,将其放在底部是有优势的。这样做可以避免浏览器早期解释JavaScript,并使页面的其余部分加载更快。 - Matthew Manela
@Sven,将脚本放在页面底部增加了页面准备就绪的机会。没有理由不能同时使用两种技术。个人而言,我总是默认使用$(document).ready(/*...*/);因为某些原因,并把它放在head里面只是因为...习惯吧。尽管如果我正在处理涉及图像的脚本,那么我会在底部放置一个$(window).load(/*...*/)。然后惊叹于我为什么不每次都这样做... =/ - David Thomas
是的,就我所知,$(window).load(/*...*/) 正是做这个事情的:(参考 load event 在 api.jquery.com 上的文档),页面底部的示例说明了 [$(window).load()] "在页面完全加载包括图形时运行一个函数。" - David Thomas
@Sven:别担心,总是很愉快的;我能帮你解决问题吗? - David Thomas

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接