javascript - Google Analytics (GTAG) 和 JavaScript 问题
问题描述
我已经完成了从analytics.js到gtag.js的迁移,并且我已经配置并更新了对各种“onclick”事件的跟踪。我有一个问题,只有一个元素没有被跟踪。
例如,此代码适用于我网站上的所有元素:
<a id="js-logo" class="nav__logo" tabindex="0" aria-labelledby="aria-logo" onclick="gtag('event', 'click', {'event_category' : 'Navegación', 'event_label' : 'n.logo'});">
但是这个元素(只有这个)不起作用:
<button id="js-abrir-menu" class="nav__abrir" tabindex="-1" aria-hidden="true" onclick="gtag('event', 'click', {'event_category' : 'Navegación', 'event_label' : 'n.abrir.menu'});">
而且我注意到它通过删除绑定到按钮的Javascript(显示覆盖菜单)运行良好(所以gtag代码很好)。Javascript代码是:
document.querySelector("#js-abrir-menu").onclick = function() {
document.querySelector(".menu").style.height = "100%";
}
我将相同的 javascript 结构与另一个按钮(关闭菜单按钮)一起使用,并且它们也被跟踪。我还通过在 gtag 末尾添加“return false”以及使用 getElementById 而不是 querySelector 进行了测试。它没有任何区别。
我对 analytics.js 没有任何问题。
解决方案
What if you gather everything in one place ?
document.querySelector("#js-abrir-menu").onclick = function() {
document.querySelector(".menu").style.height = "100%";
gtag('event', 'click', {'event_category' : 'Navegación', 'event_label' : 'n.abrir.menu'});
}
推荐阅读
- flutter - 如何将模型数据解析为列表视图小部件
- c# - Azure 函数:HttpTrigger 和输出队列返回“内部服务器错误”
- c# - 多个线程使用相同的事件处理程序
- jquery - Bootstrap 4 Popover 不适用于 Safari
- git - Git - git push origin master 返回一切都是最新的,但在远程文件中没有更新
- mysql - MM 两个主动 mysql 复制如何处理唯一键值
- visual-studio-code - 一个终端问题需要 VSCode 核心团队的某个人向我指出正确的代码
- java - 无法在 Linux 上运行的 Wildfly 10 上读取 ISO-8859-1 文件?
- amazon-web-services - Cloudformation 模板无法执行挂载目标的检索
- javascript - e2e 测试是否应该将数据保存在真实数据库中?