Как интегрировать Google Analytics в веб-сайт jQueryMobile


JQueryMobile загружает свою первую страницу, как это делает каждый сайт. Обычная интеграция Google Analytics работает - запрос отслеживается. Но следующие страницы загружаются асинхронно, и клики пользователей не отслеживаются.

Как интегрировать Google Analytics в веб-сайт jQueryMobile, чтобы отслеживать все клики по страницам?

3 12

3 ответа:

Джон Гейлз написал об этом большую статью.

Http://www.jongales.com/blog/2011/01/10/google-analytics-and-jquery-mobile/

Вот код, который он рекомендует использовать:

$('[data-role=page]').live('pageshow', function (event, ui) {
    try {
        _gaq.push(['_setAccount', 'YOUR_GA_ID']);

        hash = location.hash;

        if (hash) {
            _gaq.push(['_trackPageview', hash.substr(1)]);
        } else {
            _gaq.push(['_trackPageview']);
        }
    } catch(err) {

    }

});

Обновить

Поскольку live теперь устарело, вы должны использовать событие on вместо него, если вы используете jQuery 1.7+. http://api.jquery.com/on/

Для тех, у кого возникли проблемы с Phonegap и google analytics:

Google code использует файлы cookie и не работает с файлами:// URL, которые использует Phonegap. Команда Pokki сделалахорошую реализацию , которая использует localStorage вместо cookies. Я сделал вилку на github, чтобы убрать необходимость в pokki, поэтому вот решение, которое работает с phonegap как автономная библиотека

Https://github.com/ggendre/GALocalStorage

Надеюсь, это кому-то поможет остальное:)