2015-08-05 6 views
0

Я пытаюсь получить s.tl(), чтобы передать eVar, но вызов запускается без передачи eVar, и я не могу понять, почему, я использовал тот же код через другое правило загрузки на той же странице, которая работает.s.tl() call not setting eVar

Рабочий код

setTimeout(function(){ 
    s.linkTrackVars='eVar17'; 
    s.eVar17 = _satellite.data.customVars.HL_AB; 
    s.tl(true,'o','Hook Logic'); },5000); 

неработающего кода

setTimeout(function(){ 
s.linkTrackVars='eVar38'; 
s.eVar38 = _satellite.data.customVars.GOOG_AS; 
s.tl(true,'o','AdSense Tracking'); }, 5000); 

Я даже пытался отправить данные через, как контекст данных, также изменяется на вар JS вместо DTM var, но ничего, это как если бы строка s.linkTrackVar обрабатывалась как пустая, так как даже если var был пуст, он все равно установил бы как null.

Однако я получаю var для возврата в консоль, поэтому я добавил тайм-аут, чтобы убедиться, что он был доступен при запуске вызова.

Любые идеи?

ответ

2

В вашем тесте, где пиксель не показывает eVar38, вы определенно уверены, что _satellite.data.customVars.GOOG_AS не является ни неопределенным, ни пустым? Я хотел бы предложить вам добавить следующие строки в функции SetTimeout непосредственно перед s.tl:

_satellite.notify("GOOG_AS custome var is '" + _satellite.data.customVars.GOOG_AS + "'", 1); 

Затем запустите тест снова, с отладкой DTM на, и посмотреть, если это значение пустое. Я думаю, что наиболее вероятным сценарием является то, что эта переменная не определена или пуста, и в этом случае она не будет передана в качестве параметра запроса в вызове отслеживания s.tl().

+0

Согласен. Необходимо подтвердить, что _satellite.data.customVars.GOOG_AS содержит значение. –

 Смежные вопросы

  • Нет связанных вопросов^_^