Html 加载并执行传统(同步)Google Analytics跟踪代码段作为第一个DOM元素

Html 加载并执行传统(同步)Google Analytics跟踪代码段作为第一个DOM元素,html,dom,google-analytics,synchronous,Html,Dom,Google Analytics,Synchronous,Google说,当使用传统的(同步的)ga.js跟踪代码片段时,应该确保它作为DOM的最后一个元素执行 <script src="http://www.google-analytics.com" > <script> try{ var pageTracker = _gat._getTracker("UA-xxxxxx-x"); pageTracker._trackPageview(); } catch(err

Google说,当使用传统的(同步的)ga.js跟踪代码片段时,应该确保它作为DOM的最后一个元素执行

<script src="http://www.google-analytics.com" >
<script>
  try{
    var pageTracker = _gat._getTracker("UA-xxxxxx-x");
    pageTracker._trackPageview();
  } catch(err) {}
</script>
通过将脚本放在页面正文的末尾,可以确保跟踪代码作为DOM的最后一个元素执行。如果由于某种原因中断了给定的页面加载,则可能不会执行该页面视图的GIF请求。但是,如果将跟踪代码放在页面顶部,任何负载中断都可能导致报告不完整或不准确,因为跟踪代码的报告依赖于页面数据

这是真的吗?跟踪代码如何依赖其报告的页面数据?跟踪初始DOM加载(alot)后添加到DOM的所有内容。那么,谷歌到底指的是什么类型的页面数据呢

是的,我知道有一个异步代码段。但我正在试验一种方法,将代码段(如下所示)作为DOM中的第一个元素运行,这将使我受益匪浅

<script src="http://www.google-analytics.com" >
<script>
  try{
    var pageTracker = _gat._getTracker("UA-xxxxxx-x");
    pageTracker._trackPageview();
  } catch(err) {}
</script>

试一试{
var pageTracker=_gat._getTracker(“UA-xxxxxx-x”);
页面跟踪器。_trackPageview();
}捕获(错误){}
这会以什么方式扰乱我的页面和事件跟踪?此外,异步跟踪代码不会等待DOM加载后再执行。那么,跟踪代码真的依赖于页面数据吗

更新:谢谢你的回答,Mathias!如果我错了,请纠正我,但如果我把跟踪代码放在头上,唯一可能发生的事情是,当页面加载中途中止时,我可能会得到不准确的报告

否则,如果页面已完全加载,跟踪是否能正常工作

这就是他们所说的“因为跟踪代码的报告依赖于页面数据。”

通过将脚本放在页面正文的末尾,可以确保跟踪代码作为DOM的最后一个元素执行。如果由于某种原因中断了给定的页面加载,则可能不会执行该页面视图的GIF请求

他们的意思是说,如果页面加载中途中止(网络/服务器问题,用户在页面完全加载之前离开页面,或者用户单击停止按钮等),并且GA代码段靠近关闭标记,那么很可能它还不会被加载,因此它将永远不会被执行。GA不会注册页面视图

但是,如果将跟踪代码放在页面顶部,任何负载中断都可能导致报告不完整或不准确,因为跟踪代码的报告依赖于页面数据

如果将GA代码段放在
中,它将更快地加载和执行。然而,这也意味着即使页面没有完全加载(因此“不准确”),它也会注册“访问”

。这也是为什么我们在美国这样做的原因


注意:请使用旧的/阻止跟踪代码。它总是更好的选择。

如果您在文档的开头有这个选项,如果它失败了。脚本的其余部分也会失败。脚本的其余部分是什么意思?为什么在头脑里会有什么不同?此外,谷歌表示,跟踪代码依赖于页面数据。你知道吗?谢谢你的回答,马西亚斯!如果我错了,请纠正我,但如果我把跟踪代码放在头上,唯一可能发生的事情是,当页面加载中途中止时,我可能会得到不准确的报告。否则,如果页面完全加载,跟踪将完美工作?所以,这就是他们的全部意思“因为追踪代码的报告依赖于页面数据。”@Sebastian是的,差不多就是这样。