У меня есть требование для отслеживания загрузок файлов PDF на моем сайте.
Я использую свой собственный плагин для достижения этой цели: https://github.com/rsleggett/Quick-Event-Tracking
Однако, все, что он делает, это вызовфункция trackEvent с правильными параметрами.Моя проблема в том, что при отслеживании загрузки PDF событие запускается, но никогда не завершает загрузку:
Вот мой код:
<a href="_images/printer-certificate.pdf" class="track-pdf" target="_blank">Track lots</a>
<script>
$('.track-pdf').gaTrackEvent({
category: 'Download',
action: 'PDF',
labelAttribute: 'href',
useEvent: true,
event: 'click'
});
</script>
Вот что я вижу на панели «Сеть» для firebug:
Этот запрос никогда не выполняется, и, похоже, он не записан в Google Analytics.
У кого-нибудь есть идеи, почему?
IЯ пытался добавить задержку перед изменением document.location следующим образом:
<a href="_images/printer-certificate.pdf" class="track-pdf" target="_blank">Track lots</a>
<script>
$('.track-pdf').gaTrackEvent({
category: 'Download',
action: 'PDF',
labelAttribute: 'href',
useEvent: true,
event: 'click',
complete: function (elem, e) {
setTimeout(function () { document.location = $(elem).attr('href') }, 100);
e.preventDefault();
return false;
}
});
</script>
Кажется, это работает - запрос завершается, если я смотрю на него в fiddler.Тем не менее, это кажется хакерским, и я не хочу, чтобы мои загрузки открывались в одном и том же окне (это все равно нарушает мои требования).
Есть идеи?