我一直怀疑 SiteCatalyst s_code 内部究竟是什么触发了页面加载时的第一个自动调用。
事实上,我遇到了两种不同的情况,这让我有点困惑。
通常,s_code 库带有如下图所示的页面底部代码:
<!-- SiteCatalyst code version: H.26.0.
Copyright 1996-2011 Adobe, Inc. All Rights Reserved
More info available at http://www.omniture.com -->
<script language="JavaScript" type="text/javascript" src="path_to/s_code.js"></script>
<script language="JavaScript" type="text/javascript">
/* You may give each page an identifying name, server, and channel on the next lines. */
/************* DO NOT ALTER ANYTHING BELOW THIS LINE ! **************/
var s_code=s.t();if(s_code)document.write(s_code)</script>
<script language="JavaScript" type="text/javascript">
if(navigator.appVersion.indexOf('MSIE')>=0)document.write(unescape('%3C')+'\!-'+'-')</script><noscript><img src="http://metrics...." height="1" width="1" border="0" alt=""/></noscript><!--/DO NOT REMOVE/-->
<!-- End SiteCatalyst code version: H.26.0. --><br/><br/>
我结束了这部分:var s_code=s.t();
触发第一个自动调用(通过 t() 方法),但我想知道为什么if(s_code)document.write(s_code)
需要它。
删除这两个指令将导致页面加载时停止任何自动调用。
相反,当 s_code 由 DTM 提供服务时,似乎会在没有页面底部代码的情况下触发第一个调用,只是通过 s_code 库加载。
独立的 s_code 和 DTM 都是 Hx 版本。
所以我最后的问题是:
- 为什么var s_code=s.t();if(s_code)document.write(s_code)
页面底部需要这部分?
- 究竟是什么触发了自动 s_code 调用?
非常感谢。