Bu kod ile benim bir projeyi sunan bir web sitesinde İndir düğme tıklama izliyorum:Analytics kullanarak olaylarla bir indirme düğmesi tıklamasını Takip
function trackDownload(link) {
try {
_gaq.push(['_trackEvent', 'Downloads', 'Click', 'Setup executable']);
setTimeout('document.location = "' + link.href + '"', 100);
} catch (err) {}
return false;
}
Ve düğme bir şey olarak:
<a href="files/setup.exe" onclick="return trackDownload(this);">Download</a>
Yani, bir kullanıcı tıklattığında, Analytics'e bir olay gönderilir ve kullanıcı dosyaya yeniden yönlendirilir.
Bu, harici bağlantı takibi'da da geçerlidir, hiçbir fark yoktur. Ve şimdi benim sorum var. Analytics olayının, kullanıcı yönlendirilmeden önce "işlendiğinden" emin olabilir miyim? Değilse, bu yönlendirme olayın kaybolmasına neden olur? Şu anda olaylar izleniyor, ancak bunların tümünün olduğundan emin olamıyorum.
_gaq.push(function() { document.location = link.href; });
Ama bu çalışırsa açık değil ya da bir öncekine sadece eşdeğer olup olmadığını:
ben de Analytics sıraya yönlendirme fonksiyonunu iterek, biraz farklı bir şey deneyebilirsiniz okuyun. Aslında, "" çağrıları _gaq.push [...] komutları, "" iletildikçe yürütür.
Yönlendirme sırasında "_gaq" içinde yeniden yönlendirmeyi yapabilirim ve daha sonra "catch" bloğunda ve daha gecikmeli "setTimeout" (bir veya iki saniye) içinde tekrarlayabilirim. Yani '_gaq' ile bir şeyler ters giderse, kullanıcının er ya da geç yönlendirildiğinden emin olabilirim. –
Geciken setTimeout'un analitik durumunun ele alınmasının bir yolu olduğunu kabul ediyorum.Ancak, sanırım bir veya iki saniye biraz hızlıdır. Ayrıca, yakalama bloğunun gerekli olmadığını fark ettim - Cevabımı güncelleyeceğim. –
Aslında, bunu neden denediğimi hatırlamıyorum. Try.catch 'bloğu :) Zaman aşımı hakkında: Tıklandığında düğmeye daha uzun bir (5 sn) ve bir çevirici ayarlayabilirim. Yani daha hızlı kullanıcı hiçbir şey olmuyor hissine sahip olmayacak ... –