大家好,我最近接管了一个网站,该网站在每次加载页面时都嵌入了大约10个第三方javascripts。这些内容包括但不限于分析、聊天系统、A/B测试、评论、字体、产品推荐、库(jquery)和站点的自定义代码。其中一些是本地托管的,许多是由创建它们的公司托管的。
我能得到一些关于加载所有这些的最佳方式的输入,并允许它们都100%地正常工作,但防止它们给我的访问者造成延迟。
我找到了两个看起来很有希望的解决方案,但是没有听说过/使用过它们,所以我不愿意实现它们。我希望有任何想法/帮助。谢谢!
http://www.olark.com/spw/2011/10/lightningjs-safe-fast-and-asynchronous-third-party-javascript/
检测和终止缓慢的第三方javascript请求 [ http://headjs.com/ ]
发布于 2014-05-27 19:18:32
为了异步加载javascript,可以使用HTML5异步属性
<script async src="http://third-party.com/resource.js"></script>你也可以使用经典的方式,但现在不那么推荐了。
(function(d, t) {
var g = d.createElement(t),
s = d.getElementsByTagName(t)[0];
g.src = '//third-party.com/resource.js';
s.parentNode.insertBefore(g, s);
}(document, 'script'));发布于 2014-05-27 19:20:02
关于这是一篇不错的博客文章主题的async
发布于 2014-05-27 19:16:46
这只有两种方法:要么将async=true参数添加到脚本标记中,要么按照谷歌的建议--将引用移到文本的屏幕折叠之外,最好是移到脚下。
Firefox有这个有用的浏览器控制台,它显示了一些延迟的来源。无论如何,你可能不得不做出妥协,放弃一些猪。
如果您还没有这样做,那么启用HTTP压缩,特别是对于.js文件。奇怪的是,这甚至在局域网上也有帮助,因为局域网的连接似乎没有限制。
https://stackoverflow.com/questions/23896983
复制相似问题