Google Analytics 事件被取消

6

在页面上附加 Google Analytics 事件跟踪到超链接存在严重问题(如文档中所示)。

示例:

<a
    href="http://www.example.com/"
    onclick="_gaq.push(['_trackEvent', 'Links', 'Click', 'Example Link']);"
>
    Example!
</a>

当用户在Google Chrome浏览器中点击此类链接时,GA会开始向服务器发送请求(事件跟踪),但浏览器也开始加载另一个页面(跟随链接),因此GA请求被“取消”,事件未能到达GA服务器,并且未显示在统计数据中。
我们该如何应对呢?
例如,我们可以延迟导航到链接页面,同时事件正在到达GA服务器,但是如果GA请求是异步的,并且我们在文档中找不到任何回调功能,我们该如何实现这一点呢?
是否有一种方法可以在推送命令被执行时得到通知?
1个回答

8
使用新版Universal Analytics中的analytics.js,您可以指定一个hitCallback函数,该函数会在数据发送后立即运行。请参阅设置命中回调
使用标准异步分析工具ga.js,没有确切的方法可以确定跟踪gif请求已经完成(除非重新编写分析代码并自己发送gif)。我已经通过在链接之前使用短暂延迟(150毫秒)取得了良好的结果。

谢谢回复!在生产环境中,完全用analytics.js替换ga.js是安全的吗? - Slava Fomin II
对于访客跟踪,是的。然而,analytics.js目前尚不支持与ga.js相同的功能。缺失的内容包括重新营销支持、内容实验、增强的链接归因等。此外,虽然它已经用自定义维度和指标取代了事件,但界面仍然有事件选项卡 - 您只能通过自定义报告使用自定义维度。 - Eike Pierstorff

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接