0

我正在使用标准的 Google Analytics Javascript 代码来跟踪我网站上的出站链接:

  function recordOutboundLink(link, category, action) {
    _gat._getTrackerByName()._trackEvent(category, action);
    setTimeout('document.location = "' + link.href + '"', 100);
  }

即使我添加"target='_blank'到我的链接,所有链接仍然在同一个窗口/选项卡中打开。我试过 add 'document.location.target',但脚本还没有工作。

4

1 回答 1

3

document.location = newURL将在现有窗口中打开 URL。您可以使用window.open(newURL)在新窗口中打开 URL。

其他几件事:

  1. document.location已被弃用——location.href改为使用。
  2. 您可以通过不传入操作并从链接 href 获取来简化代码。

尝试以下

<a href='http://example.com' onclick="return recordOutboundLink(this, 'Outbound Link');">

function recordOutboundLink(link, category) {
  var url = link.href;
  _gat._getTrackerByName()._trackEvent(category, url);
  if (link.target == '_blank') 
    window.open(url);
  else 
    setTimeout(function() {location.href = url;}, 150);
  return false;
}

仅供参考:为什么只使用 setTimeout 在现有窗口中打开 URL?开始在现有窗口中打开新 URL 可能会在分析跟踪像素请求完成之前停止它。如果您在新窗口中打开 URL,则无需延迟。

于 2012-07-08T19:46:20.180 回答