我希望我的鏈接看起來像合法網址,但行爲有所不同,如點擊事件發生時轉到我定義的某個跟蹤網址。 當我用鼠標左鍵單擊鏈接時,我可以用.click()處理程序捕捉它,並將href更改爲其他內容。當我點擊右鍵時,它不會被.click()捕獲,但我可以使用.mousedown()和.mouseup(),這只是我的問題的部分解決方案。在jQuery鏈接中檢測右鍵單擊的「在新選項卡中打開」?
問題是,我想確保當某個用戶右鍵單擊鏈接時,鏈接仍然看起來合法,但是當他選擇在新選項卡中打開鏈接時,我會捕獲該事件並更改HREF。最後,當鏈接上發生實際的點擊事件時,href將被更改回原始。他們真正去的網址,做了一些事情,並將它們重定向到真實的網址,但它發生得非常快。因此,此功能的目標是欺騙用戶並跟蹤他們的點擊次數。 Facebook做到了,但他們如何處理右鍵點擊和「在新標籤中打開」?
好了,如果沒有一些代碼,我想不會成氣候.. 一些代碼,我現在所擁有的:
link = $(selectorName);
var original_link = link.attr("href");
link.click(function(){
link.attr("href", "/track_and_redirect");
}).mousedown(function(event) {
switch (event.which) {
case 3:
//alert('Right mouse button pressed');
link.attr("href", "/track_and_redirect");
break;
default:
}
}).mouseleave(function(){
link.attr("href", original_link);
});
目前,當你右鍵點擊該鏈接後,新的URL將在瀏覽器中顯示的角落,我該如何繞過?
你是說你想要的實際鏈路發送他們不是「合法」呢? – musefan 2013-04-11 08:59:45
*「我希望我的鏈接看起來像合法網址,但行爲不同,就像去我定義的某個跟蹤網址」*不要。不要。執行Google在搜索結果頁面上的操作:通過鏈接將您帶到重定向到目標的跟蹤頁面。 (甚至他們所做的有點邪惡,因爲當你懸停鏈接時,你在狀態欄中看到的並不是你想要的真實鏈接,他們會覆蓋狀態文本。) – 2013-04-11 09:00:48
爲什麼倒下的票?有些事不清楚嗎?沒有研究工作?沒有必要採取這種情感。 @musefan:他們將被引導到跟蹤網址,但鏈接本身需要看起來像直接到達目標網址。 – test 2013-04-11 10:04:29