我正在尝试与其他公司的Google Analytics(分析)代码合作。不幸的是,我没有太多的经验,只了解代码的基础。
我正在使用的以下代码应该跟踪跨浏览器的点击:(我已经裁剪了大部分代码并编写了重要的代码)
if (($(link).attr('href').indexOf('example.com') != -1) &&
(window.location.href.indexOf('example.com') == -1)) {
$(link).bind('click', function (l) {
if (typeof (_gat) == "object") {
l.preventDefault();
_gaq.push(['_link', $(link).attr('href')]);
}
});
}
现在我遇到的问题是阻止默认值现在阻止所有外部链接在新窗口中打开。
如何修改此代码并保持跟踪,以便它们仍然可以执行?
最佳答案
_link
在内部设置location.href
可以跳转到新的URL,但是会忽略链接中的任何目标属性。除了使用_link
,您还可以使用_getLinkerUrl
并自己跟踪URL
$(link).bind('click', function (l) {
if (typeof (_gat) == "object") {
var pageTracker = _gat._getTrackerByName();
var url = pageTracker._getLinkerUrl(this.href);
l.preventDefault();
if ($(this).attr('target') != '_blank') location.href = url;
else window.open(url);
}
});
关于jquery - Google Analytics(分析)被阻止在新窗口中打开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10300231/