google-tag-manager - 自定义历史更改触发器以跳过 GTM 中同一页面上的 hashchanges
问题描述
我有一个带有 Barba.js 的网站,可以使用 pushState API 来加载页面。因此,为了在 GTM 中跟踪这些虚拟页面加载,我添加了一个历史更改触发器来触发分析页面查看事件。它工作得很好。但如果我有页面锚点,例如
<a href="#about">About</a>
这也会触发历史更改事件,并导致谷歌分析记录另一个我不想要的页面视图。
有没有办法使历史更改触发器仅在新页面上触发,例如如果/services
更改为,并且在 URL更改/about
为时不触发/about
/about/#about
更新: 我现在使用“历史源”变量等于“pushState”条件来过滤历史更改事件,因为哈希更改事件在数据层变量的历史源中显示“popState”。我不是 100% 确信这是正确的,但它似乎正在工作。
解决方案
推荐阅读
- react-native - 如何在“React Native 功能组件”中将“状态”从子级传递给父级?
- html - 隐藏了一些 html5 颜色弹出窗口
- c# - 我无法获取分页的 odata 下一页链接 #2458
- javascript - 为什么 fetch 总是在这里返回 undefined?
- php - 使用 PHP (userbot) 发送私人消息
- c++ - C++20:如何按大小分割范围?
- c++ - 为什么调用复制构造函数而不是使用右值初始值设定项的移动构造函数?
- r - 在 R. 中,有条件地添加其中一个变量必须为正的值(使用 rowsums)
- python - 屏幕截图后移动部分留下痕迹而不尊重屏幕部分
- python - 是否可以将 PyTorch dataLoader 对象存储到文件或其他东西中?