Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/427.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 基于类名的Google标记管理器变量,并在历史记录更改时推送_Javascript_Google Tag Manager - Fatal编程技术网

Javascript 基于类名的Google标记管理器变量,并在历史记录更改时推送

Javascript 基于类名的Google标记管理器变量,并在历史记录更改时推送,javascript,google-tag-manager,Javascript,Google Tag Manager,我有一个单页应用程序,我需要在谷歌标签管理器中设置一个变量。我正在对页面视图触发器使用历史更改 因此,数据层需要在加载和每个历史更改事件时推送。 变量应该列出div class x的所有内部文本,以逗号分隔 这可能吗?下面是在窗口加载时仅获取第一个div类x innertext Html 可变输出: 标签1、标签2、标签3、标签4 我想将该变量添加为页面视图的自定义维度。您可以使用自定义JavaScript变量完成此操作。像这样的事情应该可以做到: function(){ // Empty

我有一个单页应用程序,我需要在谷歌标签管理器中设置一个变量。我正在对页面视图触发器使用历史更改

因此,数据层需要在加载和每个历史更改事件时推送。 变量应该列出div class x的所有内部文本,以逗号分隔

这可能吗?下面是在窗口加载时仅获取第一个div类x innertext

Html

可变输出: 标签1、标签2、标签3、标签4


我想将该变量添加为页面视图的自定义维度。

您可以使用自定义JavaScript变量完成此操作。像这样的事情应该可以做到:

function(){
  // Empty array that will store your comma separated list
  var myVariable = [];

  // Create array of all elements with class "x"
  var myArray = Array.from(document.querySelectorAll('.x'));

  // Loop through myArray to get text and push to comma separated list
  myArray.forEach(function(element){
    myVariable.push(element.innerHTML);
  })

  // Return comma separated list
  return myVariable;
}
然后可以使用此变量作为自定义标注的值

function() {
 return window.document.getElementsByClassName('x')[0].innerText; 
}
function(){
  // Empty array that will store your comma separated list
  var myVariable = [];

  // Create array of all elements with class "x"
  var myArray = Array.from(document.querySelectorAll('.x'));

  // Loop through myArray to get text and push to comma separated list
  myArray.forEach(function(element){
    myVariable.push(element.innerHTML);
  })

  // Return comma separated list
  return myVariable;
}