0

我想知道这是否是通常完成的事情或可能的事情(我是新手)假设你有一个沉重的 javascripted 网站。基本上是一个 Web 应用程序页面。如果页面的一部分是邮箱怎么办......并且用户不一定立即使用它。您能否在页面加载后下载邮箱所需的 javascript,或者甚至在他们需要使用邮箱时下载?我从另一个问题中看到了这一点:

$.getScript("my_lovely_script.js", function(){

alert("Script loaded and executed.");
4

3 回答 3

3

是的,您可以“稍后”加载非必要脚本以避免在显示初始页面之前对其进行处理。

有几种方法:

  1. 您可以将脚本标记标记为延迟或异步(有关详细信息,请参阅 MDN),因此浏览器将异步加载它,并且不会为加载或运行脚本而暂停页面显示。
  2. 您只能根据需要动态加载它。
  3. <body>在标记之前的右侧末尾加载脚本,</body>以便页面可以在加载之前显示。

在您继续这条路之前,我强烈建议您测量页面的加载资源并找出时间的真正去向。在您测量时间实际去向之前过早优化很少是改进事情的最有效方法。Chrome 调试器可以显示大量有关资源加载时间的数据。

另外,请记住,优化有效缓存的设计可能非常有效,因为您的脚本是为您网站的第一页加载的,它们将被缓存用于所有未来的页面,并且将从浏览器磁盘或内存中非常非常快速地加载缓存。

于 2012-11-01T03:24:01.110 回答
0

是的,这是可能的并且已经完成。

您可以随时将脚本标签添加到文档中。您还可以使用 LabJs 之类的实用程序来帮助您完成这项工作。

http://labjs.com/

于 2012-11-01T03:25:32.000 回答
0

是的,您可以延迟加载脚本,但是您可能应该做的是转到https://developers.google.com/speed/pagespeed/之类的东西,看看花了这么长时间并对此进行优化。通过使用同时从多个域加载等技术以及使用https://github.com/mishoo/UglifyJS2等工具来组合、压缩和缩小 js 代码,您很有可能会看到更多的整体性能

于 2012-11-01T03:25:35.060 回答