为网站设计的Google +1按钮发布以来,很多网站立刻部署上了,但大家也发现了一个严重的问题【使用了Google+1后网站打开速度变慢了,Google +1按钮总要等上数秒甚至是数十秒才能读取完毕出现在页面里】今天Aaron Peters给出了几个优化的意见,大家可以参考一下。
首先是一定不要把那段Javascript代码放在<head>标签里,这样会拖慢整个网页的打开速度。最好是将其放在</body>之前,这样页面可以完全打开,之后再等待+1按钮慢慢读取。其实Google如果再上心点,做成类似AdSense和Google Analytics那种非阻塞形式的JS代码就更快了。
其次,Aaron发现Google的Javascript代码只允许浏览器缓存6分钟,这其实也导致了我们再次打开网页时候速度依然快不起来。 Aaron还发现Google提供的代码有个小瑕疵,其中的http://apis.google.com/js/plusone.js应该改成 https链接,否则浏览器会做一次自动跳转,又耽误了一点时间。
最后,Aaron建议在Google改进之前,这么来写Google +1的代码还能快一点:
<!-- Place this tag just before your close body tag -->
<script>
(function(d, t) {
var g = d.createElement(t),
s = d.getElementsByTagName(t)[0];
g.async = true;
g.src = 'https://apis.google.com/js/plusone.js';
s.parentNode.insertBefore(g, s);
})(document, 'script');
</script>
<!-- Place this tag where you want the +1 button to render -->
<g:plusone></g:plusone>