Skip to content

Instantly share code, notes, and snippets.

@panayotoff
Created April 15, 2015 09:18
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save panayotoff/fb27097c276d1f43270e to your computer and use it in GitHub Desktop.
Save panayotoff/fb27097c276d1f43270e to your computer and use it in GitHub Desktop.
Little Google Analytics tracking helper I use in some of my projects, requires jQuery.extend() method
//--------------------------------------------------------------
// Google analytics tracking helper
// @Author : Chris Panayotov / info[at]bassta[dot]bg
//--------------------------------------------------------------
// Usage: tracker.track({eventCategory: '', eventLabel:''});
// @eventCategory : Typically the object that was interacted with (e.g. button)
// @eventAction : The type of interaction (e.g. click)
// @eventLabel : Useful for categorizing events (e.g. nav buttons)
// More info @ https://developers.google.com/analytics/devguides/collection/analyticsjs/events
//--------------------------------------------------------------
var tracker = (function ($, window) {
var hasGA = window.ga;
var defaults = {
eventCategory: 'button',
eventAction: 'click',
eventLabel: ''
};
function track(_trackObj) {
var trackObj = $.extend(defaults, _trackObj);
if (hasGA) {
window.ga('send', {
'hitType': 'event',
'eventCategory': trackObj.eventCategory,
'eventAction': trackObj.eventCategory,
'eventLabel': trackObj.eventLabel
});
} else {
console.log('[Google Analytics tracker not found, failed to track]', trackObj);
}
}
return {track: track};
})(jQuery, window);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment