2011-01-26 3 views
50

Можно ли отслеживать хеш-ссылки, например страницы с аналитикой google?Можно ли отслеживать хеш-ссылки, например страницы с аналитикой google?

Например, я хочу, чтобы index.php/# 1, index.php/# 2 и index.php/# 3 отображались как отдельные образы страниц с отдельным временем, проведенным на странице.

Если нет простого способа сделать это, как добавить событие трека в событие onclick с jquery? Могу ли я получить точное время на «странице» информации таким образом?

+0

Вы строите целые сайты на одной странице?Это супер удобный и быстрый, мне просто нравится! – Dave

+0

@Dave я бы точно не назвал его «супер удобным для пользователей» ... im использовал его на моем сайте только потому, что нет другого способа с тем, как работает мой сайт – Markasoftware

+0

Я думал, что Дэйв саркастично, пока я не понял, что он спросил вопрос :) – sweaver2112

ответ

107

В общем, ваш код может выглядеть так:

_gaq.push(['_trackPageview',location.pathname + location.search + location.hash]); 

вы можете либо привязать этот код каждый раз, когда у вас есть изменения хэша в вашем приложении, или вы могли бы использовать generic hashchange plugin, который использует onhashchange HTML5, а некоторые назад совместимые хак для старых браузеров, и связываете это код для этого события, так что он срабатывает каждый раз, когда изменяется хеш.

Используя этот плагин, ваш код может выглядеть следующим образом:

$(window).hashchange(function(){ 
    _gaq.push(['_trackPageview',location.pathname + location.search + location.hash]); 

}) 


UPDATE 2014:

Это, как вы могли бы сделать это в новых Universal Analytics:

ga('send', 'pageview', { 
'page': location.pathname + location.search + location.hash 
}); 

Как это сделать, если вы используете Google Analytics с Диспетчером тегов Google:

  • Перейти к макросам
  • пересматриваемых URL макрос «Фрагмент»
+0

безупречный! ... пока это работает (что и должно). Я дам вам свой выбор здесь через пару часов, когда я увижу, что в него входят хиты. На самом деле у меня произошло событие слайда при изменении хэша, поэтому я ударил его там без каких-либо плагинов. – Dave

+3

Вы можете увидеть, как он отправляется на ваш аккаунт в режиме реального времени в Chrome с помощью этого расширенного расширения. Это сделано командой Google Analytics. https://chrome.google.com/extensions/detail/jnkmfdileelhofjcijamephohjechhna – Yahel

+0

Вы, ребята, знаете, как это сделать с помощью универсального кода google analytics? – KingOptimizer

2

Google Analytics позволяет track custom events, например, загружается страница AJAX.

(Обычные предостережений применяются при этом - надеюсь, есть не-JavaScript способы доступа к тем же данным :)

+5

Это * не *, для чего предназначены пользовательские события. Они предназначены для нестраничных действий. Если ваш сайт использует хэш-изменения для выполнения обычных загрузок страниц, вы должны использовать представления виртуальной страницы. Пользовательские события предназначены для отслеживания вещей, которые не соответствуют традиционной парадигме просмотра страниц. – Yahel

2

Хороший вопрос. Чтобы отслеживать хеш-ссылку, вы должны отслеживать событие или просмотр страницы для каждой ссылки на этот хеш. Для просмотра страницы, пример кода ниже

onclick="_gaq.push(['_trackPageview','/page/hashLink1']);" 

Примечание: Этот метод создания виртуального просмотра страницы, которая суммирующий до подсчета страниц вашего сайта. Если ваш сайт является большим html-файлом с якорями (возможно, на этой странице есть слайдер), этот метод дает вам оценку взаимодействия пользователя с вашим «контентом»

Смежные вопросы