google-analytics - 如何捕获按钮单击事件标签附近的文本

标签 google-analytics google-tag-manager

我正在使用跟踪代码管理器跟踪一些 Assets 下载。页面上有多个可下载的 Assets ,每个都有一个“下载 Assets ”按钮。

我想在标签管理器中创建一个标签来涵盖所有这些下载,使用事件标签来指定 Assets 类型:例如“全出血图片”、“Facebook 广告图片”等。

通常,我会为此使用“点击文本”或“点击 URL”变量,但这次我不能。所有下载按钮都具有相同的文本(显然,这无法更改),并且 URL 仅包含 CMS 生成的 Assets 编号,而不是描述性 URL。

但是,每个按钮上方都有一个 h4,其中包含 Assets 名称:

有没有什么方法可以在标签管理器中创建一个变量,当它被点击时,它会在按钮上方刮掉 h4 的内容?

我为 h4 创建了一个变量,但它只捕获页面上第一个 h4 的内容(而不是最接近按钮单击的那个)。

<div class="content">
     <h4>Full Bleed</h4>
     <div class="copy">
          <p>Perfect for social media.</p>
     </div>
     <div class="btn-container">
          <a href="URL?assetNo=17232568" class="btn" >Download assets 
          </a>
     </div>
</div>

最佳答案

是的,有办法做到这一点。它需要一些 .
您可以创建一个新的自定义 JavaScript 变量并使用内置变量 {{Click Element}} - 然后得到它的 parent node ,例如:
{{点击元素}}.parentNode
这应该返回整个 <div class="content">元素。然后只需在该元素内搜索 <h4>像这样:
{{点击元素}}.parentNode.getElementsByTagName("h4")[0]

  • 这是您的“全出血”元素。请记住,这会返回一个数组,即 [0]。

  • 需要注意的一件事是,当您单击元素时:
    <div class="btn-container">
          <a href="URL?assetNo=17232568" class="btn" >Download assets 
          </a>
    </div>
    
    根据您点击的具体位置,{{Click Element}} 有时会是 <div>元素,有时 <a>在里面。这有时会破坏“.parentNode”功能,因此您需要进行一些检查。下面我写了一些伪代码(未经测试,乱七八糟):
    自定义 JavaScript 变量:
    function(){
      var parent = {{Click Element}}.parentNode;
      var value = "";
      if(parent.className === "content"){
        value = parent.getElementsByTagName("h4")[0]
      }else{
        value = parent.parentNode.getElementsByTagName("h4")[0]; // you need to go one level above
      }
      
      return value.innerText;
    }
    

    关于google-analytics - 如何捕获按钮单击事件标签附近的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55401229/

    相关文章:

    google-analytics - 如何在多语言网站的 Google Tag Manager dataLayer 中描述产品类别和产品名称?

    javascript - GTM自定义JS触发器

    google-analytics - 使用Google跟踪代码管理器进行Google Analytics(分析)网站搜索

    google-analytics - 为什么我的 Google Analytics 报告中显示屏幕分辨率(未设置)?

    使用跟踪代码管理器的 Android 内容实验几天后未显示 session

    curl - Google Analytics API和用户定义的变量

    ios - GoogleTagManager v5 iOS 设置问题

    google-analytics - Google Tag Manager + Google Analytics v 仅使用 GA : any reason to use just GA?

    html - 如何捕获嵌套的 HTML 元素?

    google-analytics - 向 BigQuery 中的历史表添加新字段