我的查询是我有一个重定向到另一个页面的链接。在 webkit 浏览器中,如何强制 sitecatalyst 服务器调用(脚本执行)在重定向发生之前完成?
我正在使用 sitecatalyst 作为门户。我有
配置自定义链接调用以包含 didAction 参数
在 webkit 浏览器上成功完成调用(如 Adobe 指南中所述)。
按钮onClick事件的自定义链接代码如下:
<script language="javascript" >
function search(keyword)
{
var s=s_gi('testing');
s.linkTrackVars="prop11,events";
s.linkTrackEvents="event6";
s.prop11=keyword;
s.events="event6";
s.tl(this,'o','Search',navigate());
window.location=searchresults.html;
}
</script>
<script language="javascript" >
function navigate()
{
return false;
/*To induce a delay to ensure that image request is sent to Adobe before the
user leaves the page.(As given in Adobe guide - code release H.25))
Code version H.25 (released July 2012) includes an overloaded
track link method ( s.tl ) that forces WebKit
browsers to wait for the track link call to complete.)*/
}
</script>
然而,即使在此之后,我在自定义链接跟踪中仍然遇到错误。重定向发生在呼叫完成之前。
请同样提供帮助。提前致谢。
问候,
哈希尔
好的,首先,您的实施方式存在很多问题。下面是它应该是什么样子的示例:
<a href="searchresults.html" onclick="search('someKeyword');return false;">search</a>
<script type='text/javascript'>
function search(keyword) {
var s=s_gi('testing');
s.linkTrackVars="prop11,events";
s.linkTrackEvents="event6";
s.prop11=keyword;
s.events="event6";
s.tl(this,'o','Search',null,navigate);
return false;
}
function navigate(){
window.location="searchresults.html";
}
</script>
几点
- 您实际上并没有发布链接或您正在使用的任何调用
search
函数,所以我有一个链接作为示例。
- 您通过了
navigate
函数作为第 4 个参数,而它应该是第 5 个参数(使用 null 或空白字符串作为第 4 个参数的占位符)
- 它应该是
navigate
not navigate()
。您这样做的方式是调用该函数并将函数的结果作为参数传递。s.tl
需要实际的函数或对函数的引用,并且它将调用该函数。公平地说,Adobe 文档有拼写错误:它显示了用引号引起来的示例,但该示例不起作用。
- 重定向应放置在
navigate
,不在search
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)