【发布时间】:2012-06-18 02:37:33
【问题描述】:
我尝试通过在我的脚本中添加一些async 属性来优化我的页面。它似乎破坏了我的 javascript,因为 $(document).ready 在所有脚本加载之前执行!
我看到我可以通过输入$(window).load 而不是$(document).ready 来解决我的问题,但我想知道是否有更好的解决方案。
这个解决方案在我的案例中引发了 2 个问题:
- 我必须更改所有
$(document).ready并告诉所有开发人员不要再使用它了 - 脚本将在所有图像加载后执行。我的网站有很多沉重的图片,我真的需要在 dom 准备好后尽快执行一些脚本。
你有一些魔术吗?也许将所有脚本放在最后?使用defer 而不是async?
【问题讨论】:
-
在 jQuery 检测到文档就绪状态后,还会为使用 document.ready 的脚本执行文档就绪调用。在使用 jQuery 的网站上,在加载完所有资源后尝试使用以下内容:
$(document).ready(function () {console.log('READY');});