Диспетчер тегов Google - переменная элемента DOM - получить текст дочернего элемента

Просто изучаю GTM. Я хочу использовать GTM для получения текста элемента с помощью переменной элемента DOM, которую я назвал «образец». Эта переменная в настоящее время установлена ​​в селектор CSS specimen.

Триггер представляет собой тип «Щелкнуть - все элементы», установленный в класс specimen_record_thumbnail.

Как видно из модели DOM ниже, селектор specimen должен быть привязан к родительскому элементу триггера, по которому был выполнен щелчок, которым является specimen_record_container, поскольку страница будет содержать ряд таких структур / классов.

Как мне определить селектор CSS в переменной элемента DOM, чтобы получить текст селектора specimen для родственного брата specimen_record_thumbnail?

<div class = "specimen_record_container">
        <img class = "specimen_record_thumbnail" data-specimen = "374" src = "specimen_media/374/specimen_pk_374_20082014_123312_thumbnail.jpg" border = "0">
        <div class = "diagnosis" title = "<p>Adrenal gland</p>" rel = "tooltip">Diagnosis</div>
        <span class = "specimen"> T93.M8006<sup>5</sup></span>
    </div>

Кроме того, возможно, лучше использовать пользовательскую переменную JavaScript ...

Любая помощь или совет приветствуются!

Обновление - Рабочее решение: Спасибо Eike Pierstorff

Этот код входит в пользовательскую переменную JavaScript GTM, чтобы получить текст второго последнего дочернего элемента для родительского контейнера, который затем устанавливается в качестве метки для тега Universal Analytics:

function () { return {{Click Element}}.parentNode.lastChild.previousSibling.innerText } 

Полностью непроверенный, поэтому это не ответ, а что-то вроде {{Click Element}}. ParentNode.lastChild может работать (если "образец" гарантированно будет последним дочерним элементом элемента specimen_record_container).

Eike Pierstorff 22.03.2018 09:30

Спасибо, попробовал, но в GA я получаю метку события «[object HTMLImageElement] .parentNode.lastChild», также попытался добавить innerHTML ...

IlludiumPu36 22.03.2018 09:57

Вам нужно будет поместить это в пользовательскую переменную js (как анонимную функцию, возвращающую {{Click Element}}. ParentNode.lastChild.innerText).

Eike Pierstorff 22.03.2018 10:02

Спасибо! Это работает. На самом деле, как оказалось, разметка для DOM в OP была неправильной. Это второй ребенок, которого я хочу запечатлеть. Я пробовал parentNode.nth-child (2), но похоже, что вы не можете использовать nth-child таким образом. Итак, я использовал function () {return {{Click Element}}. ParentNode.lastChild.previousSibling.innerText} @Eike Pierstorff вставил ваш ответ, и я его принимаю!

IlludiumPu36 23.03.2018 04:00
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
4
4
3 541
0

Другие вопросы по теме