Нет, это не правда. Менеджер тегов Google будет работать, даже если к нему уже подключен обработчик событий. Однако это не будет работать, если функция в этом обработчике событий подавляет распространение события.
Например, GTM потерпит неудачу, если вы сделаете что-то подобное (пример использует jQuery, но то же самое относится и к обычному JS):
$('a#toTop').on('click', function() {
console.log("Link Clicked");
return false;
});
, поскольку return false
останавливает распространение событий, что является обязательной для GTM функцией JS.
Менеджер тегов Google не прикрепляет обработчик событий к отдельным элементам , Вместо этого он присоединяет обработчик событий к самому документу. Щелчок по элементу затем распространяется вверх через DOM, пока он не встретится с документом root и не будет обработан соответствующим обработчиком события. Если вы возвращаете false, событие не перемещается вверх, и обработчик событий GTM не будет работать.
Однако если вы сделаете это правильно - например, с помощью event.preventDefault()
вместо возврата false - тогда GTM будет работать просто хорошо. «Return false» - это в основном устаревший способ подавления действия элемента по умолчанию, и его больше ни в коем случае нельзя использовать для этой цели.