Google跟踪代码管理器 - dataLayer具有以前的值

时间:2016-11-28 19:34:56

标签: javascript jquery google-tag-manager

我在同一页面上有两个标签。

第一个标记适用于页面视图,并包含将值推送到dataLayer的自定义html。

<script>
  $(document).ready(function ($) {
    $('ul li').click(function(){
        console.log("index:"+$(this).index());
        dataLayer.push({'clicked_slider_tab_index': $(this).index()});
    });
  });
</script> 

使用标签字段中的此dataLayer变量,使用通用分析类型点击元素上的第二个标记。

问题在于此。当第二个标记触发时,它的{{dataLayer - clicked_slider_tab_index}}变量具有先前的值。 console.log按预期工作,但不知何故dataLayer.push没有按预期工作。

我只能检测上次操作中点击的索引。

1 个答案:

答案 0 :(得分:2)

这很有可能发生,因为链接点击事件同时触发了自定义HTML标记和您的通用事件标记,因此自定义HTML标记没有时间更新'clicked_slider_tab_index'值。

在此实例中跟踪的最佳方法是展开dataLayer.push以包含事件。下一步是将触发器更改为触发新事件“indexClicked”。这将确保在单击元素时填充dataLayer变量。

Something