谷歌标签管理自定义JS - 错误时返回值

问题描述 投票:1回答:1

我试图在Google Tag Manager中使用自定义js来对2种情况下的文本进行处理。这是相同的文本,但根据页面的情况,有时它是超链接,其他时候它不是

我让下面的内容在Chrome控制台中工作(没有 "function()"),但当添加到Google标签管理器时,它要求有 "return "存在。我在 "try "之前添加了,但这造成了问题。

function() {
try {
        google_tag_manager["GTM-KGLGRKD"].dataLayer.get("gtm.element").parentElement.parentElement.querySelectorAll("td")[1].querySelector("a").innerText;
        } catch (error) {
       google_tag_manager["GTM-KGLGRKD"].dataLayer.get("gtm.element").parentElement.parentElement.querySelectorAll("td")[1].innerText;}
    }

我不确定这是否是获得我所需要的东西的最佳方式,但有什么想法可以使上述内容与标签管理器兼容?

javascript google-tag-manager
1个回答
0
投票

哼,要注意的是,自定义JS代码需要为每个GTM事件提供一个值,而不仅仅是点击事件。

我建议像这样

function() {
  var returnvalue;
  if ({{Click Element}}) {
    try {
      returnvalue = {{Click Element}}.parentElement.parentElement.querySelectorAll("td")[1].querySelector("a").innerText;
    } catch (error) {
      returnvalue = {{Click Element}}.parentElement.parentElement.querySelectorAll("td")[1].innerText;
    }
  }
  return returnvalue;
}

{{点击元素}}是一个可选的内置变量,在使用前需要在GTM中启用。

© www.soinside.com 2019 - 2024. All rights reserved.