如何防止缓慢加载外部js文件阻塞整个网站的加载过程(因为浏览器一次只处理2个请求)?如何防止外部JS阻止您的网站加载?
比方说,我想包括sharethis按钮,但服务器遇到高负载,并且需要长期服务于我的请求,我怎么能强迫休息,反正加载。还是应该在网站已经加载之后添加外部脚本?
我使用的是回报率与jQuery。
最佳, 奥莱
如何防止缓慢加载外部js文件阻塞整个网站的加载过程(因为浏览器一次只处理2个请求)?如何防止外部JS阻止您的网站加载?
比方说,我想包括sharethis按钮,但服务器遇到高负载,并且需要长期服务于我的请求,我怎么能强迫休息,反正加载。还是应该在网站已经加载之后添加外部脚本?
我使用的是回报率与jQuery。
最佳, 奥莱
我个人认为那些你需要后,装载额外的项目。
例如,代码的jQuery添加到网页的底部,这样的jQuery已经加载,然后加载它们等)低于
$(document).ready(function(){
$.getScript("urlofscript");
});
详细getScript加入的(here
你应该dinamycally通过使用jQuery的$(文件)。就绪()函数加载外部的Javascript。
你必须创建< SCRIPT>元素,并将它们添加到您的文档。
地方你的JavaScript页面的结束,之前</BODY>
只要把<script>
元素在文档(只是</body>
标记之前)结束。
肯定把这个阻止脚本在你的页面结尾处,之前。
或者,如果你想懒洋洋地加载/实际上并不需要的脚本的页面加载,那么document.write()的选项是好的。
我还建议从该页面读取网页优化规则:http://code.google.com/speed/page-speed/docs/rtt.html
或读取这两种史蒂夫·索德的书:高性能网站,甚至更快的网站
很好的链接,谢谢! – 2009-07-21 15:26:44
有一点要注意:如果外部脚本使用document.write将它的东西添加到页面中,您将无法使用此方法 - document.write将覆盖整个页面!我有谷歌地图这个问题,直到我发现他们的情况下,你可以添加异步= 2查询字符串。 – 2009-07-21 15:05:11