用于跟踪外发链接点击次数的jQuery代码(Google Analytics)

时间:2010-04-27 07:23:21

标签: jquery google-analytics tracking

我在网上发现了这个:

$('a[href^=http]:not("[href*=://' + document.domain + ']")').click(function() {
 pageTracker._trackPageview('/outgoing/' + $(this).attr('href'));
});

但它不起作用。在我的Google Analytics帐户中,没有显示/outgoing/个链接(自我实施以来已超过24小时)。

这段代码有什么问题?我当然使用jQuery;)

我已经拥有:

<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>

<script type="text/javascript">
try {
  var pageTracker = _gat._getTracker("UA MY CODE");
  pageTracker._trackPageview();
} catch(err) {}
</script>

2 个答案:

答案 0 :(得分:1)

尝试(注意属性值的双引号而不是:not()):

$('a[href^="http"]:not([href*="://' + document.domain + '"])').click(function() {
    pageTracker._trackPageview('/outgoing/' + $(this).attr('href'));
});

此外,您的链接是静态的(在HTML页面上)还是动态的(由JavaScript生成)?如果您在此代码之后添加链接,则需要再次调用此代码以附加click事件处理程序。

答案 1 :(得分:0)

我认为您还需要包含Google Analytics外部JavaScript文件。 将以下代码放在页面正文的末尾(未经测试):

var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));

Google可以在此处找到更详细的“操作方法”:clicky