Skip to content

Instantly share code, notes, and snippets.

@Shoora
Forked from ershov-ilya/events_counter.js
Created January 26, 2018 11:34
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Shoora/ba59223d2225ecb9857dd99fe7d7a720 to your computer and use it in GitHub Desktop.
Save Shoora/ba59223d2225ecb9857dd99fe7d7a720 to your computer and use it in GitHub Desktop.
Счётчик событий для метрики и GA
<script type='text/javascript'>
jQuery(document).ready(function() {
//СЕЛЕКТОРЫ
var sel = {
'add_to_basket': '.item-info-btn-holder, .buttonrequest, .products-item .button', //Добавление товара в корзину
'regist': '.register form, #office-auth-register', //регистрация
'auth': '#office-auth-login', //Авторизация
'subscribe': '.subscribe',// подписка на рассылку
'email': 'a[href^="mailto"]', //Клик по email
'soc': '.footer-social a', //Переход в соц. сети
'one_click': '.swal2-confirm.swal2-styled', //Быстрый заказ
'phones': jQuery('*').filter(function() {
return $(this).text().replace(/\u00A0/g, '').match(/^\+?\d{1}[- ]?\(?\d{3}\)?[- ]?\d{3}[- ]?\d{2}[- ]?\d{2}$/);
})
}
//Отправка события
function event_send(ec, ea, el) {
ga('send', 'event', ec, ea, el);
yaCounter3762229.reachGoal(ec, {
'action': ea,
'label': el
});
// console.log(ec, ea, el);
}
//Добавление товара в корзину
jQuery('body').on('click', sel.add_to_basket, function() {
var ec = 'add_to_basket';
var ea = 'click';
var el = '';
event_send(ec, ea, el);
});
//Регистрация
jQuery('body').on('submit', sel.regist, function() {
var ec = 'registration';
var ea = 'submit';
var el = '';
event_send(ec, ea, el);
});
//Авторизация
jQuery('body').on('submit', sel.auth, function() {
var ec = 'auth';
var ea = 'submit';
var el = '';
event_send(ec, ea, el);
});
//Клик по email
jQuery('body').on('click', sel.email, function() {
var ec = 'email';
var ea = 'click';
var el = jQuery(this).attr('href');
event_send(ec, ea, el);
});
//Копирование email
jQuery('body').on('copy', sel.email, function() {
var ec = 'email';
var ea = 'copy';
var el = jQuery(this).attr('href');
event_send(ec, ea, el);
});
//Подписка на рассылку
jQuery('body').on('submit', sel.subscribe, function() {
var ec = 'subscribe';
var ea = 'submit';
var el = '';
event_send(ec, ea, el);
});
//Клик по телефону
sel.phones.on('click', function() {
var ec = 'phone';
var ea = 'click';
var el = jQuery(this).text().replace(/\u00A0/g, '');
event_send(ec, ea, el);
});
//Копировать телефон
sel.phones.on('copy', function() {
var ec = 'phone';
var ea = 'copy';
var el = jQuery(this).text().replace(/\u00A0/g, '');
event_send(ec, ea, el);
});
//Передача cid
ga(function(tracker) {
var clientId = tracker.get('clientId');
ga('set', 'dimension1', clientId);
});
//Группы в соц. сетях
jQuery('body').on('click', sel.soc, function() {
var ec = 'soc';
var ea = 'click';
var el = jQuery(this).attr('href');
event_send(ec, ea, el);
});
//Быстрый заказ
jQuery('body').on('click', sel.one_click, function() {
var ec = 'one_click';
var ea = 'submit';
var el = '';
event_send(ec, ea, el);
});
});
</script>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment