引起的。
我已经在GTM(Google标签管理器(中创建了以下标签:
(function(window) {
if (typeof(dataLayer[dataLayer.length-1].count) !== "undefined"){
dataLayer.push({'count':dataLayer[dataLayer.length-1].count+1});
} else {
dataLayer.push({'count':1});
}
})(window);
最初,当没有"计数"推向数据层时,if语句返回false,并且按下{" count":1}。之后,每次推动都应将计数值增加。我的目的只是计算某些按钮上的点击次数。
但是,似乎从未验证"如果"语句,因此每个按钮单击都会导致将" 0" -S推向数据层。我知道这不是最好的解决方案,但是我仍然找不到为什么这不起作用。顺便说一句,当我在浏览器控制台中运行此代码时,它正在工作。
我必须使用dataLayer.length-2
而不是dataLayer.length-1
访问count
。这是由于每次点击事件之后gtm将GTM Click Click Click Clike to DataLayer的事实