Urmărirea jQuery Google Analytics

Încerc să folosesc jQuery pentru a urmări descărcările și alte evenimente de pe pagina web. Este dificil să depanați acest lucru. Codul de mai jos nu funcționează în prezent. Presupunem că pagina are încărcarea bibliotecii jQuery și toate cele XXXX sunt înlocuite cu informațiile corecte. Vreo idee? FOARTE APRECIAT!

<script type="text/javascript">
    var _gaq = _gaq || [];
    _gaq.push(['_setAccount', 'UA-XXXXX']);
    _gaq.push(['_setDomainName', 'XXXXX.com']);
    _gaq.push(['_addIgnoredRef', 'XXXXX.com']);
    _gaq.push(['_trackPageview']);
    if (jQuery) {
        jQuery(document).ready(function() {
            jQuery('a').click(function() {
                var $a = jQuery(this);
                var href = ($a.attr('href')) ? $a.attr('href') : '';
                if ((href.match(/^http/i)) && (!href.match(document.domain))) {
                    var category = 'outgoing - XXXX Landing';
                    var event = 'click - XXXX Landing';
                    _gaq.push(['_trackEvent', category, event, href]);
                } else {
                    if (href.match(/.(doc|pdf|xls|ppt|zip|txt|vsd|vxd|js|css|rar|exe|wma|mov|avi|wmv|mp3)$/i)) {
                        var category = 'download - XXXX Landing';
                        var event = 'click - XXXX Landing';
                        _gaq.push(['_trackEvent', category, event, href]);
                    } else {
                        if (href.match(/^mailto:/i)) {
                            var category = 'mailto - XXXX Landing';
                            var event = 'click - XXXX Landing';
                            _gaq.push(['_trackEvent', category, event, href]);
                        }
                    }
                }
            });
        });
    }

    (function() {
        var ga = document.createElement('script');
        ga.type = 'text/javascript';
        ga.async = true;
        ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
        if ('http:' == document.location.protocol) {
            ga.src = 'http://www.google-analytics.com/ga.js';
        } else {
            ga.src = 'https://ssl.google-analytics.com/ga.js';
        }
        var s = document.getElementsByTagName('script')[0];
        s.parentNode.insertBefore(ga, s);
    })();
</script>
1
pentru a depana mai întâi trebuie să înlocuiți toate apelurile _gaq.push() cu console.log() sau alertă (); - pentru a vedea dacă codul jQuery funcționează corect
adăugat autor shershen, sursa
E greu de depanat, parțial, pentru că este atât de oribil formatat. Trebuie să remediați acest lucru atât în ​​întrebarea dvs., cât și în codul dvs. real, dacă tocmai ați copiat-o și ați lipit-o.
adăugat autor Bojangles, sursa
Am încercat codul dvs. cu console.log în loc de _gaq.push și a funcționat foarte bine. Probabil _gaq.push (['_ setDomainName', 'XXXXX.com']]); conține alt domeniu decât document.domain (de exemplu, testați pe localhost). Această neconcordanță poate împiedica urmărirea Google Analytics.
adăugat autor CodingHamster, sursa

2 răspunsuri

Google Analytics are built-in Event Tracking.

De exemplu, dacă încercați să urmăriți descărcarea unui fișier, puteți face acest lucru -

HTML:

Click to download.

JS:

$("a.download").click(function() {
    _gaq.push(['_trackEvent', 'Files', 'Downloaded'])
});

Aici este Ghidul de urmărire a evenimentelor al companiei Google. Ghidul vă va explica totul mult mai detaliat pentru dvs.

0
adăugat

Probabil că aș folosi $ .getScript pentru a descărca și aplica codul GA la DOM, mai degrabă decât chestia de lungă formă pe care o dau drept boilerplate. De asemenea, veți avea nevoie de faptul că în DOM înainte de a rula chestiile unde ați setat codul de urmărire, domeniul etc. sau _gaq nu va face nimic.

0
adăugat
JavaScript, România - Moldova
JavaScript, România - Moldova
328 participanți

Comunitatea Română JavaScript: github.com/js-ro Pentru confort, opriți notificările. Parteneri: @node_ro, @php_ro, @python_ro, @seo_ro, @RomaniaGroup, @ai_ro, @Grupuri_IT Offtop: @holywars_ro Joburi: @js_jobs_ro Sponsored with ❤️ by ciupacabra.com