如何在触发网络分析代码之前确保JS重定向?

时间:2011-09-14 01:41:37

标签: javascript redirect google-analytics adobe-analytics

我有一个客户正在设置一个系统,其中某个页面“A”的访问者会收到一个Javascript重定向到另一个页面“B”。 (我知道,不理想但不是我的想法......)

他们使用基于Javascript标记的网站分析解决方案(Omniture SiteCatalyst),该解决方案部署在两个页面上。

我的问题是,对于我们重定向的访问者,我们是否可以确保重定向将会触发,并且在页面“A”网络分析代码触发并触发页面视图之前它们将“关闭”页面“A” ?

是否有某些事情需要以编程方式完成,并且是否存在或多或少的“万无一失”方式以确保页面“A”的分析代码不会触发,或者任何解决方案都会有一些泄漏,具体取决于浏览器的变化和网络/客户端PC速度等等?

2 个答案:

答案 0 :(得分:5)

您可以确定的一种方法是返回执行重定向的JavaScript代码,而不是其他任何内容。是否有任何理由在重定向用户时加载页面内容?

换句话说,用您选择的服务器端语言:

if in experiment B:
   emit javascript redirection template
else:
   emit template for page A

其中,JavaScript重定向模板只不过是:

 <script>window.location.href="path/of/page/B";</script>

答案 1 :(得分:2)

你必须构造代码看起来像这样(伪代码):

if( on_page_a ){
  if( user_requires_redirect ){
    redirect( PAGE_B );
  } else {
    fire_analytics( PAGE_A );
  }
} else {
  fire_analytics( PAGE_A );
}

希望有意义