为什么disqus / facebook在将它们集成到您的网站时为每个网站托管了一个单独的javascript文件

时间:2012-05-06 21:33:10

标签: javascript facebook plugins disqus

DISQUSS js code

     */* * * DON'T EDIT BELOW THIS LINE * * */
(function() {
    var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
    dsq.src = 'http://' + disqus_shortname + '.disqus.com/embed.js';
    (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
})();

Facebook JavaScript代码

(function(d){
var js, id = 'facebook-jssdk'; if (d.getElementById(id)) {return;}
js = d.createElement('script'); js.id = id; js.async = true;
js.src = "//connect.facebook.net/en_US/all.js";
d.getElementsByTagName('head')[0].appendChild(js);
}(document));

为什么disqus / facebook为每个网站都有一个单独的javascript文件,例如

    dsq.src = 'http://work4sale.disqus.com/embed.js'; // disqus
    js.src = "//connect.facebook.net/en_US/all.js"; // facebook

为什么他们不能为每个网站都有一个通用的js文件。将它们整合到您的网站时。

1 个答案:

答案 0 :(得分:0)

Facebook有几十个脚本可供您在您的网站上使用:如按钮,评论等 - 每个都是10-15 KB左右......只是猜测。可能是3-4 KB gzipped。

因此,当您需要类似按钮时,请复制类似按钮脚本并在您的网站上使用它。如果您需要评论,请复制评论脚本并在您的网站上使用它。

如果facebook要提供一个包含在您网站上的单一全包脚本,那么当您只需要大约10-15千字节的功能时,该脚本可能很容易达到几百KB。现在,你成倍增加...让每分钟数百万的请求说200 KB,你说的是每分钟几千兆字节(可能是太字节数)的不必要带宽。现在我知道这对你和你的小妈妈和流行音乐网站来说并不重要,但这对于facebook来说每年可以带来数百万美元的带宽。