我们当前的外部链接代码无法正常工作,因此我被要求绘制一个新的集合。这是我从另一个网站上撤下的代码,但看起来好像它正常工作(保存$()。准备好它已经丢失了)。我很清楚谷歌建议你手动将onclick放到每个外部链接中,但是在我的网站上有太多可行的,所以我采用JQuery作为一个全能。我无法在多个用户通常无法访问的页面上实现此功能(由于监管偏执),因此必须激活页内分析才能查看该页面的统计信息。没有点击外部链接注册,但我发现(使用警报)_gaq.push至少会触发。这是代码(现已修复):
$().ready(function(){
$("a").on('click',function(e){
var url = $(this).attr("href");
if (e.currentTarget.host != window.location.host) {
_gaq.push(['_trackEvent', 'Outbound Link', e.currentTarget.host, url, 0]);
if (e.metaKey || e.ctrlKey || this.target=="_blank") {
var newtab = true;
}
if (!newtab) {
e.preventDefault();
setTimeout('document.location = "' + url + '"', 100);
}
}
});
});
(!newtab)if是否确保_gaq.push使用超时触发。有什么想法来解决它吗?
编辑:值得注意的是,这是一个外部文件。
Edit2:代码已纠正错误,以便轻松复制/粘贴想要使用它的其他人。非常感谢Mike。
答案 0 :(得分:3)
您的代码没有明显错误。我尝试检查__utm.gif
跟踪像素请求,而不是尝试通过页内分析来验证事件。这样做的几种不同方式是:
我的偏好是使用Chrome开发者工具或Fiddler。
页面上的分析代码可能有一个_trackPageview
,因此当页面加载时,您会看到一个初始的__utm.gif。
当_trackEvent触发时,您应该会看到一个新的__utm.gif请求。要在__utm.gif网址中查看的内容包括:
更正 - 小错误:target=="_blank"
在新窗口中打开检查时应为this.target=="_blank"
。