$(document).on('ready', function () { dlConfig = JSON.parse(dlConfig); var eventName = (/iphone|ipad/gi).test(navigator.appVersion) ? "touchstart" : "mousedown"; $(document).on(eventName, '[data-dl-role]', handlerDataLayer); $(document).on('change', 'select[data-dl-role]', handlerDataLayer); }); var handlerDataLayer = function (e) { if (([1, 2, 0].indexOf(e.which) > -1) || e.originalEvent == undefined || e.type === 'change') { e.stopPropagation(); var $target = e.type === 'change' ? $(this).find(':selected') : $(this); if ($target.data('dl-role') && dlConfig.hasOwnProperty($target.data('dl-role'))) { if ($target.data('one-click') && $target.data('count-click') != 0) { return false; } var data = JSON.parse(JSON.stringify(dlConfig[$target.data('dl-role')])); if (e.type === 'change') { data.eventLabel = glueText($target.text()); } for (var prop in data) { var eventLabel = prop.toLowerCase(); if ($target.data('dl-e-' + eventLabel)) { data[prop] = $target.data('dl-e-' + eventLabel); } } var date = new Date(); var month = addZero(date.getMonth() + 1); var day = addZero(date.getDate()); var year = date.getFullYear(); var hour = addZero(date.getHours()); var minutes = addZero(date.getMinutes()); var seconds = addZero(date.getSeconds()); var dates = [month, day, year]; var times = [hour, minutes, seconds]; data['eventDate'] = dates.join('/') + ' ' + times.join(':'); // console.log(data); // $('body').append( '