数据层未获得点击事件推送?

时间:2019-11-27 08:03:52

标签: google-tag-manager

我在单击事件时将数据层推到gtm遇到麻烦。但是,数据层会正确加载到页面负载中,而不是单击时。下面是我的代码

    $('.load-test-div').on("click", function () {
      //console.log('Called properly');
      dataLayer.push({
        'event': 'display more',
      });
    });

我以不同的方式操纵了代码,但仍未推送。为了进行测试,我使用了chrome的“标签管理器”插件。是否有任何设置可以捕获Google跟踪代码管理器中的点击事件。请帮忙!

1 个答案:

答案 0 :(得分:0)

我看不到更多,只能猜测。 例如,这有效:https://jsfiddle.net/emo38rbv/

dataLayer = window.dataLayer || [];
document.querySelector('.load-test-div').addEventListener('click', function(){
    dataLayer.push({
    'event': 'display more',
  });
  alert('this has pushed to the dataLayer: '+JSON.stringify(dataLayer[dataLayer.length -1]));
});

问题可能是:

  • 在加载jquery之前会调用您的函数。
  • 尚未声明dataLayer
  • DOM未准备就绪(查询选择器找不到元素)
  • 该元素在您运行函数时不存在