Вы можете просто помещать события в очередь, когда это необходимо.
Так, например, у нас есть одностраничное приложение, для которого мы хотим отслеживать просмотры страниц, хотя мы никогда не перезагружаем страницу.
Для достижения этой цели мы прикрепляем ко всем событиям нашего маршрутизатора прослушиватель, который помещает каждое новое представление страницы в стек _gaq
. (Это сильно упрощено.)
router.on("route", function(page) {
_gaq.push(['_trackPageview', page]);
});
Это поместит аргумент страницы в стек отслеживания Google Analytics. Просто убедитесь, что вы настроили Google Analytics до этого звонка.
Например, для событий мы иногда хотим отслеживать нажатие кнопки. Поэтому мы просто делаем _trackEvent
отправку в очередь объекта, содержащего детали того, что мы отправляем.
Вместо того, чтобы помещать тонну кода _gaq.push
на свою страницу, я бы порекомендовал вам сделать функцию доступной во всем вашем приложении, которая абстрагирует эту функциональность, например:
var track = function(event, payload){
_gaq.push[event, payload];
};
Это изолирует вас от изменений в Analytics API, а также позволит вам легко добавлять другие местоположения отчетов в ваши события отслеживания.
person
tkone
schedule
09.01.2013