Google Analytics事件已取消

时间:2013-06-28 09:57:08

标签: javascript google-chrome google-analytics

将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 个答案:

答案 0 :(得分:7)

使用analytics.js(新的Universal Analytics的一部分),您可以指定一个数据发送后立即运行的hitCallback函数。见Setting the Hit Callback

使用ga.js(标准异步分析),您无法确定是否已制作跟踪gif请求(无需重新编写分析代码并自行发送gif )。在跟踪链接之前,我使用短暂的延迟(150毫秒)获得了良好的结果。