Использование функции с jQuery в GTM (пользовательский HTML)

#javascript #html #jquery #google-tag-manager

#javascript #HTML #jquery #google-менеджер тегов

Вопрос:

Я протестировал эту функцию и ее вызов в консоли, и она отлично работает. Но я использую ее в GTM в пользовательском теге HTML и не использую. Есть идеи, что я могу делать неправильно?

 <script>
  
function myFunction(a,b,c,d,f) {

jQuery(document).on(a, b, function(e) {
        dataLayer.push({
            "event" : 'event',
            "event_category": c,
            "event_action": d,
            "event_label": f
        });
});

}

myFunction('mousedown','#top_nav_link_331','test1','test2','test3');

</script>
 

Ответ №1:

 <script>
  (function() {

    function myFunction(a, b, c, d, f) {

      jQuery(document).on(a, b, function(e) {
        dataLayer.push({
          "event": 'event',
          "event_category": c,
          "event_action": d,
          "event_label": f
        });
      });

    }
    myFunction('mousedown', '#top_nav_link_331', 'test1', 'test2', 'test3');
  })()
</script>
 

(Я помещаю объяснение здесь ниже, потому что у меня проблема с форматом).

Ваша проблема может возникнуть по многим причинам. Предположим, что у вас правильно установлен GTM на вашем веб-сайте, здесь у вас есть несколько идей:

  1. Ваш триггер может быть неправильным: попробуйте использовать триггер DOM — All. В консоли GTM, когда вы находитесь в режиме предварительного просмотра, проверьте, был ли запущен ваш пользовательский HTML или нет.
  2. Попробуйте использовать функции javascript IIFE при создании своих тегов (код выше)