3

我有一个客户正在使用链接到不同域上的预订引擎的表单。然而,他们没有使用传统的编码形式,可以这么说:

<div id="qs" align="center">
  <div align="center"><img src="images/qs_title.gif" alt="Quick Search">
      <table width="200" border="0" cellpadding="0" cellspacing="0">
        <!--<form  method="post">--><form  method="post">

....

 <td width="35%" valign="bottom"><div align="left"><a href="javascript:sendToCBE();"><img src="quicksearch/continue-buttom_dreams.gif" alt="Continue" width="83" height="24" border="0" ></a></div></td>

因为表单由 JavaScript Document CBE 管理,所以使用 getLinkerURL 代码进行了修改:

// JavaScript Document
function popup_no_status(loc)
{
var windowW=1000
var windowH=700
s = "width="+windowW+",height="+windowH+",status=yes, resizable=yes, scrollbars=yes";
mywin = window.open(pageTracker._getLinkerUrl(loc), "CBE", s);
mywin.focus();
}

我被告知这应该可以工作,但它似乎并没有传递 cookie。目标/域页面上确实有 pageTracker._setAllowLinker(true);代码。但是,只有目标页面上有setAllowHash(false);代码。域 1(我要传递 cookie 的域)是否也需要该setAllowHash(false);代码?我不确定我在这里缺少什么。cookie 没有被传递,所以我从第一个域获得了一个推荐 cookie。有任何想法吗?非常感谢所有见解!

4

1 回答 1

0

我是stackoverflow的新手,我对这个问题没有足够的声誉评论来澄清它,所以如果我违反任何礼仪规则,我深表歉意,因为这更像是一种帮助而不是实际答案。

  1. 新弹出窗口的 url 是否附加了额外的跟踪参数?cookie 是根据这些参数创建的,因此如果没有发生这种情况,则需要修复。

  2. 如果它们存在,则可能是您在第二个域上的 GA 设置存在问题。

如果它们不存在,请添加:

console.log('loc:' + loc');

之后: mywin = window.open(pageTracker._getLinkerUrl(loc), "CBE", s);

记录的 url 应附加跟踪参数。如果不是,那么您的问题与第一个域有关。

  1. 如果参数在 loc url 中,那么您应该看到在那之后发生了什么 - 也许您有重定向或剥离参数的东西。

顺便说一句,我已经在已弃用的 _setAllowHash 存在的情况下进行了跨域跟踪,但它没有引起问题,所以我怀疑这是一个问题。

于 2012-08-17T22:06:14.717 回答