Я пытаюсь добавить асинхронную версию кода отслеживания Google Analytics на веб-сайт.
Я бы хотел сохранить JavaScript в отдельном файле и вызывать его оттуда.
Вот что у меня есть в моем файле .js:
function addLoadEvent(func) {
var oldonload = window.onload;
if (typeof window.onload != 'function') {
window.onload = func;
} else {
window.onload = function() {
oldonload();
func();
}
}
}
function loadtracking() {
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-XXXXXXX-X']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
}
addLoadEvent(loadtracking);
А вот что у меня есть в теге <head>
моей главной страницы:
<script type="text/javascript" src="js/google-analytics.js" ></script>
Однако, очевидно, есть проблема, поскольку через несколько дней я не получаю статистику!
Есть идеи, что мне нужно изменить?
Спасибо, Нил
РЕДАКТИРОВАТЬ: Хорошо ... После некоторой обратной связи ниже, я собираюсь добавить новое текущее содержимое моего файла .js.Я буду держать его в курсе, так что если / когда это будет решено, мы надеемся, что это поможет другим людям, пытающимся делать подобные вещи.
var _gaq = _gaq || [];
function loadtracking() {
window._gaq.push(['_setAccount', 'UA-XXXXXXX-X']);
window._gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
}
loadtracking();