跟踪将卸载页面的链接的点击

时间:2014-05-28 15:38:39

标签: javascript google-analytics

我看到我的同事添加了这样的跟踪代码:

<a href="http://www.example.com/shop" onclick="_gaq.push(['_trackEvent', 'Site Promos', 'Bottom_pos1', 'Bookstore Promo']);">See all&nbsp;»</a>

但AFAIK这是不正确的 - 对吗?由于此JS代码将调度另一个HTTP跟踪请求,而浏览器只是被重定向到“http://www.example.com/shop”。因此,如果在浏览器打开www.example.com/shop之前未完成跟踪请求,请执行以下操作。什么都不会被跟踪。

我应该如何正确跟踪点击次数?

1 个答案:

答案 0 :(得分:0)

你是对的,代码的结构方式在大多数情况下都不会实际发送请求GA进行跟踪。

由于你使用的是“经典”GA(ga.js),你没有回调选项,你可以这样做。

function gotoUrl(url) {
    window.location.href = url;
}

function trackGAEvent(action, label, value, url) {
  _gaq.push(['_trackEvent', action, label, value]);

  setTimeout("gotoUrl('" + url+ "')", 100);
}

<a href="http://www.example.com/shop" 
      onClick="trackGAEvent('Site Promos', 'Bottom_pos1', 'Bookstore Promo',
      this.href);return false;">See all&nbsp;»</a>