Google Analytics (GTAG) и проблемы javaScript - PullRequest
0 голосов
/ 05 мая 2020

Я завершил миграцию с аналитики. 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'});">

И я заметил, что он работает хорошо (так что код gtag в порядке) путем удаления Javascript, привязанного к кнопке (которая показывает оверлейное меню). Код Javascript:

document.querySelector("#js-abrir-menu").onclick = function() {
    document.querySelector(".menu").style.height = "100%";
}

Я использую ту же структуру javascript с другими кнопками (кнопка закрытия меню), и они также отслеживаются. Я также протестировал, добавив «return false» в конце gtag, а также использовал getElementById вместо querySelector. Это не имеет значения.

Проблем с аналитикой не было. js.

Ответы [ 2 ]

1 голос
/ 08 мая 2020

Что если собрать все в одном месте?

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'});
}
0 голосов
/ 09 мая 2020

Спасибо за ответ. Это сработало, но элементы внутри оверлейного меню невозможно отследить. Структура выглядит так:

<ul class="menu__contenido">
    <li><a href="#seccion-inicio" onclick="gtag('event', 'click', {'event_category' : 'Navegación', 'event_label' : 'n.inicio'});">Inicio</a></li>
    <li><a href="#seccion-muestra" onclick="gtag('event', 'click', {'event_category' : 'Navegación', 'event_label' : 'n.muestras'});">Muestras Web</a></li>
    ...
</ul>

Однако, судя по тому, что я читал в поисках решений, кажется, что я мог бы исправить это с помощью Диспетчера тегов Google. У него есть «Тип триггера» для «Видимости элементов», который срабатывает, когда элементы отображаются в окне просмотра браузера. Думаю, это то, что мне нужно, потому что мое меню работает как полноэкранное всплывающее или модальное диалоговое окно. С Analytics все стало проще. js работа с «хитами», и это то, что я хотел бы иметь.

...