【问题标题】:Tracking link in different browsers不同浏览器中的跟踪链接
【发布时间】:2015-06-25 08:52:32
【问题描述】:

我使用 adobe 分析并尝试使用以下方法跟踪链接:

$(document).on('click', 'a', function() { 
    s.tl(this, 'e', 'link', null, 'navigate'); 
    return false; 
});

$("a").click(function() { 
    s.tl(this, 'e', 'link', null, 'navigate'); 
    return false; 
});

当我测试它并单击 Chrome 中的链接时,我收到的第一个状态页面已取消,使用 chrome 中的第二个选项一切正常,但在 Firefox 中我收到status 0 GET (NS_BINDING_ABORTED)

是否有任何解决方法可以在所有浏览器中正常运行,或者我应该修复以前的任何问题?

来自here 是我使用的示例,使用第二个框作为示例

我找到了这个解决方案:

https://marketing.adobe.com/developer/es/forum/general-topic-forum/custom-link-tracking-capturing-issue

建议将此作为解决方法:

<script language="javascript">
function pejTracking(linkname,url) {
var s=s_gi('myprodsuite');
s.tl(this,'o',linkname,null,navigate(url));
}
function navigate(url) {
window.location=url;
}
</script>

<a href="#" onclick="pejTracking('mytest', 'mytestpage.com');return false;">This really works!</a>

是否可以像我在文章开头那样使用 JQuery 文档或 onclick 函数,并且是否需要在每个链接中都有 onclick?

【问题讨论】:

  • 你为什么返回false
  • 嗯,这将取消活动,所以如果你的链接实际上是在某个地方,那么它不会与 return false
  • @mattytommo,Adobe Analytics 中的链接跟踪器重定向到链接的 href - 这样做是为了确保在导航离开之前跟踪点击。所以你必须返回false,否则无论是否发送了跟踪命中,都会执行默认操作。

标签: javascript jquery analytics adobe-analytics


【解决方案1】:

这很常见,并且(可能)不是问题。

出现此错误是因为链接跟踪图像请求旨在让浏览器在等待来自 Adob​​e 数据收集服务器的响应之前进入下一页。

Adobe 参考: NS_Binding_Aborted in Packet Monitors

更新:

你评论了:

是的,我已经看到了,但可以修复它吗?

你要求“修复”这个问题,就好像它坏了一样。我的意思是它没有坏了。

但如果您坚持要确保这不会出现,您将需要执行您已在问题中发布的解决方案。

jQuery 等价物是使用event.preventDefault(),然后在s.tl 调用(在navigate 回调中)之​​后更新window.location,与非jQuery 解决方案相同。

你也问过:

那么铬呢?

怎么样?这不是特定于浏览器的。这与时机有关。在 Chrome 中尝试足够多次,您应该也会在 Chrome 中看到 NS_Binding_Aborted 错误。也许。取决于连接速度、当前的 CPU 资源、一般的互联网流量、星星的排列方式等 - 你知道,所有使请求和响应发生的事情都是迟到而不是早。

【讨论】:

  • 是的,我已经看到了,但可以修复它吗?那么铬呢?
猜你喜欢
  • 2013-04-27
  • 1970-01-01
  • 1970-01-01
  • 2012-01-03
  • 1970-01-01
  • 1970-01-01
  • 2017-03-23
  • 1970-01-01
  • 2023-03-03
相关资源
最近更新 更多