Javascript 有没有理由把谷歌分析放在大脑里而不是身体里?

Javascript 有没有理由把谷歌分析放在大脑里而不是身体里?,javascript,jquery-ui,google-analytics,Javascript,Jquery Ui,Google Analytics,有没有理由把谷歌分析放在头上而不是身体的末端? (我在一个大网站上工作,它就是这样工作的) 选项1: <head> <script src="http://www.google-analytics.com/ga.js"></script> </head> <body> //html code <script src="http://www.google-analytics.com/ga.js"></script&g

有没有理由把谷歌分析放在头上而不是身体的末端? (我在一个大网站上工作,它就是这样工作的)

选项1:

<head>
<script src="http://www.google-analytics.com/ga.js"></script>
</head>
<body>
//html code

<script src="http://www.google-analytics.com/ga.js"></script>
</body>

选项2-车身底部:

<head>
<script src="http://www.google-analytics.com/ga.js"></script>
</head>
<body>
//html code

<script src="http://www.google-analytics.com/ga.js"></script>
</body>

//html代码
编辑1: 同样的问题也出现在jquery ui上

编辑2: 在脚本末尾添加ga.js(修复)


谢谢

没有什么好的理由。谷歌自己也建议将标签放在正文的底部,以避免过早加载标签和减缓页面加载


这样做可能是因为有人习惯于在标题中放置
标记。

出于性能原因,建议在html中尽可能低地放置这样的脚本。需要加载的脚本会中断浏览器中的其他下载。我建议您看看这篇文章:。

我建议使用异步谷歌分析代码

如果您使用非异步代码并将其放在head部分,那么如果ga代码加载缓慢,它可能会阻止网站的加载,因为它会等待脚本加载。由于google analytics是一个外部脚本,您可能对负载性能没有影响(通常情况下,这并不重要,但即使google有服务器问题也可能发生)


因此,不,我看不出这样做的真正原因。

按照您描述的方式嵌入ga.js代码(使用硬编码的
标记)确实是阻塞,如果您这样加载脚本,最好的做法是在
标记之前加载它。但是,如果您使用的是新的异步代码,那么这不是推荐的做法

新的异步代码在两个方面是非阻塞的。首先,它将页面的变量排入全局gaq变量队列。通过这种方式,数据是以任何一种方式准备的

然后,如本文所述,在新的异步代码中直接使用javascript写出脚本是无阻塞的(这种直接注入方法是实现异步性的方法,即使在不直接观察
async
属性的浏览器中也是如此)。如果由于某种原因谷歌的服务器出现故障或响应缓慢,网站的其余部分可以继续加载。只有当用户没有像很多人那样缓存ga.js时,才会这样做,因为ga.js在很多很多流行的网站上都有使用

所有这些的好处是ga.js加载得越早,并且能够将_gaq对象传输到谷歌,你就越有可能捕获所有潜在数据,比如快速点击你页面的用户的数据。这对于“大”网站来说尤其重要,因为这些网站往往有很多遵循快速点击习惯的固定用户


如果您对此持怀疑态度,请使用网页加载检查器(如webkit开发工具)进行测试。我对它进行了广泛的测试,没有发现在使用所述的
中的异步代码时有明显的阻塞迹象。

我知道,因为我回答了。网站是由良好的导出构建的,soo知道这篇文章。soo应该是他们放在标题中的一些原因,因为大部分js都在正文中。不,除了BodyUI+jquery之外的其他ls这不再是真的。当使用新的异步代码时,谷歌建议将其放在
标签的底部,就在开始的
标签之前。所以我必须在这个箱子里放上:头?2.浏览器如何知道如何处理asyn=true?就像在articleHi中一样,async=true是HTML5的一个属性。加载javascript时不阻塞网站的诀窍在于动态创建脚本标记。这只是未来的补充。看看这个链接,这解释了异步javascript参见[Google Analytics code:can go before in the document?]()和[Google Analytics对下载静态网页的时间有重大影响吗?]()。底线是谷歌建议把它放在正文的末尾,这样它就不会阻塞页面的其余部分。但把它放在头上也没关系。此外,GA现在有了异步版本(请参阅),它允许您更早地放置GA代码,并在现代浏览器中并行加载。