当我进行 s.tl() 调用时,似乎无法清除 s.events。我怎样才能清除 s.events 呢?

发布于 2025-01-04 00:36:19 字数 329 浏览 0 评论 0原文

Omniture 跟踪问题:

我的页面上有一个模块可以加载一些第三方信息。当该模块加载时,我调用“s.tl()”调用。不幸的是,如果我之前点击了网站中的链接或类似内容,那么 s.events 就有一个值。

因此,当模块加载时......“s.events”值会变得粘滞,然后当我在加载模块时调用 s.tl() 时传递该值。因此,dbl 计算了点击次数等。当该模块加载并调用 s.tl() 时,我需要 s.events 为空。如何?

我尝试了普通的 js 分配。 ala s.events = "",我尝试了clearVars()插件方法,不行..似乎没有任何作用。

有什么帮助吗?

Omniture Tracking Question:

I have a module on my page that loads some third party information. When that module loads I call a "s.tl()" call. Unfortunetly, if I have clicked previuosly on a link or somesuch in the site then the s.events has a value in it.

So, when the module loads... that 's.events' value gets sticky and then is passed when I call s.tl() when the module is loaded. Thus, dbl counted clicks and such. I NEED for that s.events to be empty when that module loads and I call the s.tl(). how?

I tried just normal js assignments. ala s.events = "", I tried clearVars() plugin method, no go.. nothing seems to work.

Any help?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

无边思念无边月 2025-01-11 00:36:19

您可以尝试 s.events.length = 0; 将其重置回空。

You can try s.events.length = 0; to reset it back to empty.

风月客 2025-01-11 00:36:19

通常不需要清除变量,因为您在提交链接跟踪图像请求之前定义了希望跟踪的正确变量。每次页面加载后,所有变量都会重置。

如果您想清除事件变量,您可以简单地使用:

s.events=null;

或者在调用下一个图像请求之前使用不同的事件定义事件变量。

Normally clearing the variables out is not necessary, as you define the proper variables you wish to track before submitting a link tracking image request. All variables are reset after each page load.

If you want to clear the events variable out, you can simply use:

s.events=null;

Either that or define the events variable with different events prior to calling your next image request.

海夕 2025-01-11 00:36:19

听起来您可能需要将 s.tl() 调用包装在函数中。这是我如何实现 s.tl() 调用的示例。希望这对您有帮助。 :)

function trackOmniEvent(eventString, eventLabel) {
    /* uses global namespace s */
    // set vars
    s.linkTrackVars="eVar58,events";
    s.linkTrackEvent="event20";
    s.events="event20";
    s.eVar58=eventString;
    // run tracker
    s.tl(this,'o',eventLabel);
    // reset vars
    s.linkTrackVars="None";
    s.linkTrackEvent="None";
    s.eVar58="";
    s.events="";
}

It sounds like you might need to wrap your s.tl() call in a function. Here's an example of how I've implemented my s.tl() calls. Hopefully this helps you. :)

function trackOmniEvent(eventString, eventLabel) {
    /* uses global namespace s */
    // set vars
    s.linkTrackVars="eVar58,events";
    s.linkTrackEvent="event20";
    s.events="event20";
    s.eVar58=eventString;
    // run tracker
    s.tl(this,'o',eventLabel);
    // reset vars
    s.linkTrackVars="None";
    s.linkTrackEvent="None";
    s.eVar58="";
    s.events="";
}
千柳 2025-01-11 00:36:19

每当您进行 s.tl() 调用时,您都应该始终设置 s.linkTrackEventss.linkTrackVars
因此,在您的情况下,您将执行如下操作:

s.linkTrackVars = "prop25,eVar25";
s.linkTrackEvents = "none";
s.prop25 = 'someValue';
s.eVar25 = 'someValue';
s.tl(true, 'o', 'linkName');

这将在进行 s.tl() 调用时重置所有预定义事件。

发生事件时的示例:

s.linkTrackVars = "prop25,eVar25,events";
s.linkTrackEvents = "event25";
s.prop25 = 'someValue';
s.eVar25 = 'someValue';
s.event25 = 'someEventValue';
s.tl(true, 'o', 'linkName');

You should always set s.linkTrackEvents and s.linkTrackVars whenever you make an s.tl() call.
So in your case you will be doing something like this:

s.linkTrackVars = "prop25,eVar25";
s.linkTrackEvents = "none";
s.prop25 = 'someValue';
s.eVar25 = 'someValue';
s.tl(true, 'o', 'linkName');

This will reset any predefined events when making s.tl() calls.

Example when you have an event:

s.linkTrackVars = "prop25,eVar25,events";
s.linkTrackEvents = "event25";
s.prop25 = 'someValue';
s.eVar25 = 'someValue';
s.event25 = 'someEventValue';
s.tl(true, 'o', 'linkName');
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文