Не получается очистить s.events, когда у меня есть вызов s.tl ().как я могу очистить s.events? - PullRequest
1 голос
/ 09 февраля 2012

Вопрос отслеживания Omniture:

У меня на странице есть модуль, который загружает некоторую стороннюю информацию. Когда этот модуль загружается, я вызываю вызов s.tl (). К сожалению, если я нажал предыдущую ссылку или что-то подобное на сайте, то значение s.events в этом есть.

Итак, когда модуль загружается ... это значение s.events становится липким, а затем передается, когда я вызываю s.tl (), когда модуль загружается. Таким образом, dbl подсчитал клики и тому подобное. Мне нужно, чтобы s.events был пустым, когда этот модуль загружается, и я вызываю s.tl (). как?

Я пробовал только обычные JS-задания. ala s.events = "", я попробовал метод плагина clearVars (), не ходи .. похоже, ничего не работает.

Любая помощь?

Ответы [ 4 ]

0 голосов
/ 19 июля 2014

Вы должны всегда устанавливать s.linkTrackEvents и s.linkTrackVars всякий раз, когда делаете вызов s.tl(). Так что в вашем случае вы будете делать что-то вроде этого:

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');
0 голосов
/ 24 апреля 2012

Обычно удаление переменных не является необходимым, поскольку вы определяете правильные переменные, которые вы хотите отслеживать, перед отправкой запроса изображения для отслеживания ссылок.Все переменные сбрасываются после каждой загрузки страницы.

Если вы хотите очистить переменную событий, вы можете просто использовать:

s.events=null;

Либо это, либо определить переменную событий с различными событиями додля вызова вашего следующего запроса изображения.

0 голосов
/ 23 мая 2012

Похоже, вам может понадобиться обернуть вызов 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="";
}
0 голосов
/ 09 февраля 2012

Вы можете попробовать s.events.length = 0;, чтобы сбросить его обратно на пустой.

...