【发布时间】:2016-08-03 19:39:09
【问题描述】:
我试图弄清楚如何根据全局 JavaScript 变量的值触发 Google 跟踪代码管理器事件。我在 Google 跟踪代码管理器的触发器视图中看到,我们可以为全局 JavaScript 变量等于某个值时设置触发器。但是,由于某种原因,此触发器永远不会触发。
我目前正在预览,并在进行所有更改后保存了我的更改(再次单击预览),但由于某种原因,GTM 没有触发触发器。
我创建了一个名为“Screener Step”的自定义变量,其类型为“JavaScript 变量”,全局变量名称为“screenerStep”。当“Screener Step”等于“1”时设置触发。默认为0。
我已经将变量“screenerStep”声明为全局变量,如下定义:
window.screenerStep = 0;
我可以通过在控制台中输入 screenerStep 并验证它是否等于 1 来验证 screenerStep 确实设置为 1。
如果重要的话,我正在使用 AngularJS 在 $watch 中设置 screenerStep 的值。
提前谢谢你。
更新。即使screenerStep 初始化为触发条件1,触发器也不会触发。
更新。问题是由于触发器实际上是一个自定义事件,它恰好有一个过滤器,仅当screenerStep 等于1 时才会触发。通过document.dispatchEvent(new CustomEvent('testEvent')); 广播事件后,触发器确实触发了。在我弄清楚更多事情之后,我会发布一个正式的解决方案。
【问题讨论】:
标签: javascript angularjs google-analytics google-tag-manager