Google Analytics Event Tracking for CRO and UX by Angie Schottmuller - MINIFIED

Source version with comments: http://j.mp/gaeventtrackingforcro

by Angie Schottmuller

JavaScript

setTimeout("ga('send','event', 'Reading', ' Viewed 3 Seconds+', 'Page: '+ location.pathname.toLowerCase(),0,{'nonInteraction': 1})",3000);setTimeout("ga('send','event', 'Reading', ' Viewed 5 Seconds+', 'Page: '+ location.pathname.toLowerCase())",5000);setTimeout("ga('send','event', 'Reading', ' Viewed 15 Seconds+', 'Page: '+ location.pathname.toLowerCase())",15000);jQuery(function($){var callBackTime=100;var readerLocation=150;var timer=0;var scroller=false;var didComplete=false;var startTime=new Date();var beginning=startTime.getTime();var totalTime=0;var foldToBottomTime=0;var eventLabel="Page: "+location.pathname.toLowerCase();var browserscreenheight=$(window).height();function trackLocation(){bottom=browserscreenheight+$(window).scrollTop();height=$(document).height();if(bottom>readerLocation&&!scroller){currentTime=new Date();scrollStart=currentTime.getTime();timeToScroll=Math.round((scrollStart-beginning)/1000);ga('send','event','Reading','Scroll Beyond Fold',eventLabel+'; Fold: '+browserscreenheight+'px; Scroll Start: '+timeToScroll+'s',browserscreenheight,{'nonInteraction':1});scroller=true}if(bottom>=height&&!didComplete){currentTime=new Date();end=currentTime.getTime();totalTime=Math.round((end-beginning)/1000);foldToBottomTime=Math.round((end-scrollStart)/1000);ga('send','event','Reading','Scroll to Bottom',eventLabel+'; Top-to-Bottom Time: '+totalTime+'s; Fold-to-Bottom Time: '+foldToBottomTime+'s',totalTime,{'nonInteraction':1});didComplete=true}}$(window).scroll(function(){if(timer){clearTimeout(timer)}if(!scroller||!didComplete){timer=setTimeout(trackLocation,callBackTime)}})});function _gaLt(event){var el=event.srcElement||event.target;while(el&&(typeof el.tagName=='undefined'||el.tagName.toLowerCase()!='a'||!el.href))el=el.parentNode;var track=false;var evCat="";var evAction="";var evLabel="";var...