我需要跟蹤站點目錄中的出站點擊,並且希望這樣做,以便實際的url位於href中。類似於:jquery clicktracking mousedown vs點擊
<a href="http://www.example.com" id="a24" class="link" >Go to Example</a>
這是我在下面使用的JQuery。 click.php文件基本上是查找鏈接ID,然後將點擊信息插入到一個mysql表中。
即使click.php需要很長時間才能完成,這看起來工作正常。換句話說,即使我在完成之前將click.php設置爲休眠10秒,用戶立即鏈接到目標網址。
我使用$( 'a.link')的mousedown代替$( 'a.link')。單擊當我使用。點擊,然後它不工作(點擊是沒有記錄)。我只是好奇,爲什麼它不會使用.click函數,只能與.mousedown函數一起使用。
這是一個很好的方式來捕捉與JQuery點擊或有更好的方法嗎? (我意識到任何關閉Javascript的人都不會被計算在內)。
$('a.link').mousedown(function(e){
var my_id = $(this).attr('id');
$.ajax({
type: "GET",
url: "/tiger/sal/clicks/click.php?id=my_id"
});
return true;
});
謝謝,但即使mousedown和click.php需要10秒鐘才能完成(我在click.php文件中包含了sleep(10)),它將起作用。因此,它立即將用戶發送到該網站,然後大約10秒鐘後,該點擊記錄被輸入到表格中。這就是我想要它做的,我想我只是想知道爲什麼它與mousedown一起工作,而不是點擊,以及我是否做了任何可能導致點擊跟蹤問題的事情。 – Frank 2012-04-04 01:28:26
好的。我編輯了我的答案。您希望使用jQuery發送'.post()'請求 - 這會將請求發送到服務器,而不是等待它完成後再將用戶傳送到鏈接目標。這會將所有必要的信息發送給腳本進行處理,而無需用戶等待其完成。另外,我儘量避免使用'sleep()',因爲它對UI不太好。 – hohner 2012-04-04 01:32:23
非常感謝我現在需要離開,但會盡快對此進行測試。另外,我只是把睡眠放在那裏,看看如果服務器真的很慢,會發生什麼,以及是否會減慢人們到達目的地URL。所以我會刪除在生產中。 – Frank 2012-04-04 01:50:22