【发布时间】:2009-07-18 18:35:48
【问题描述】:
在您的页面上有多个$(document).ready(function() {}); 是不是很糟糕?我有一个网站,我在不同的时间加载不同的东西。我在$(document).ready() 中触发了那些部分回发功能,但我一次在页面上大约有 4 或 5 个。这是一个不好的做法吗?具体来说,它会导致任何性能问题吗?
【问题讨论】:
在您的页面上有多个$(document).ready(function() {}); 是不是很糟糕?我有一个网站,我在不同的时间加载不同的东西。我在$(document).ready() 中触发了那些部分回发功能,但我一次在页面上大约有 4 或 5 个。这是一个不好的做法吗?具体来说,它会导致任何性能问题吗?
【问题讨论】:
这个答案不再相关。请参阅下面的其他帖子了解更多最新的 jQuery $.ready() 影响。此帖子已超过 3 年。
见:http://jsperf.com/docready/11
答案是否定的!您可以随心所欲地乱扔垃圾(注意 字垃圾)。它们只是成为一个事件队列,当 触发就绪事件。
http://www.learningjquery.com/2006/09/multiple-document-ready
【讨论】:
答案实际上是“是的,它会影响性能”:
【讨论】:
不,你想要多少都可以。一个更短、更优雅的方法是$(function(){})。
【讨论】:
如果它在同一个页面上,我会亲自将它们全部放在同一个位置,这样您就不会因为忘记加载时发生的事情而被抓住。
我怀疑性能影响是否如此重要。您是否尝试过将它们放在一起或分开对页面进行基准测试?
【讨论】:
如果其中任何一个抛出异常,它会阻止其余的运行。使用跨多个源文件(尤其是第 3 方库)“散布”的代码进行调试可能非常困难。
【讨论】: