в _Избранное

Советы по GTM

Использование DOM элементов (document ready)

Если вы в своём коде собираетесь обращаться к элементам которые находятся на страницы (кнопки, формы, поля и пр.), то свой код нужно оборачивать в такую конструкцию:

$(document).on('ready', function(){
    тут_вставьте_ваш_код
});

Это даст гарантию того, что ваш код не сработает раньше, чем загрузятся элементы DOM (т.е. страница).

 

Сохранность кода (замыкание)

При интеграции кода GTM в глобавльную обрасть видимости попадают все ваши объявленные переменные, что может повлечь перезатирания переменных, которые используются на сайте. Для экранирования вашего кода стоит использывать замыкания. (https://developer.mozilla.org/ru/docs/Web/JavaScript/Closures)

(function(){
    тут_вставьте_ваш_код
})();

Узнать текущую и предшествующиую страницуwindow.location + document.referer

  • Чтобы узнать с какой страницы пришел пользователь стоит использовать глобальную переменную document.referrer
  • Для того, чтобы узнать на какой странице сейчас находится пользователь стоит использовать переменную window.location (http://javascript.ru/window-location):

<tbody> </tbody>

Свойство Описание Пример
hash часть URL, которая идет после символа решетки ‘#’, включая символ ‘#’ #test
host хост и порт www.google.com:80
href весь URL http://www.google.com:80/search?q=javascript#test
hostname хост (без порта) www.google.com
pathname  строка пути (относительно хоста) /search
port номер порта 80
protocol протокол http:
search часть адреса после символа ?, включая символ ? ?q=javascript

Пример:

dataLayer.push({'event': 'GAevent', 'eventCategory': 'категория', 'eventAction': 'действие', 'eventLabel': window.location.href});

Проверять есть ли jQuery на странице

Иногда разработчики сайтов не используют jQuery, поэтому стоит проверить загружен ли он на странице.
Для этого зайдите в консоль и в строке ввода вставьте jQuery. Если вывелось Uncaught ReferenceError: jQuery is not defined(…), то значит jQuery не подключен на странице и стоит его подключить или попросить разработчиков.

Если же jQuery подключен, но ваш код срабатывает раньше чем он загружается, то можно использовать функцию window.onload:

window.onload = function() {
    тут_вставьте_ваш_код
}

Написать Комментарий

Комментарии