0

我想知道为什么谷歌不提供更简单、更短的初始化 ga.js 代码的方法,如下所示:

<script type="text/javascript">

  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-XXXXX-Y']);
  _gaq.push(['_trackPageview']);
</script>
<script src="//google-analytics.com/ga.js" async="true" type="text/javascript"></script>

原始解决方案是使用 javascript 检查协议、设置异步标志等。

我的解决方案有什么缺点吗?

4

1 回答 1

0

客户端的浏览器可能不支持该async属性。Google 通过动态创建脚本标签的代码无论如何都会异步加载脚本。如果代码不是异步加载的,用户可能会有不好的体验。想象一下,在用户所在的国家/地区,Google 被政府封锁,用户使用不支持的浏览器async。如果发生这种情况,用户的页面将阻塞直到http://google-analytics.com/ga.js超时,这可能需要一段时间......

为了进一步阅读这个主题,我可以推荐你:

  1. http://www.phpied.com/non-onload-blocking-async-js/
  2. http://www.amazon.com/gp/product/B008CQA8BA/
于 2013-02-19T10:16:41.763 回答