2010-03-16 64 views

回答

3

我認爲每個瀏覽器都會自動將這些信息粘貼到所有請求上,並且無法使用JavaScript直接修改它。

淘網後,你有兩個選擇,但:

  1. 啓動從Flash應用程序
  2. 啓動從Java小程序中的鏈接中的鏈接
  3. 通過運行您的網址一個推薦人匿名/欺騙服務

所有選項都很醜,我不會推薦他們出於可用性的原因。我基於這個舊的谷歌答案question,但我認爲答案的立場。

1

你可能會寫jQuery的rel屬性設置爲noreferrer,然後用$(link_you_made).click()來調用它。

+3

這是一個HTML5功能,我認爲只有最新的Webkit瀏覽器支持它。 – 2010-03-16 23:56:30

+1

確切地說,在鉻它完美的作品。 ffx 3.6沒有那麼多。 IE ...沒辦法。 – andufo 2010-03-17 00:20:14

+0

ff7.0.1不能正常工作 – 2011-10-04 17:27:52

1

不確定你的意思是打開「從jQuery內部」鏈接,但直接設置window.location不會傳遞任何引用信息。

所以,如果你有,你想傳遞你可以做這樣的事情沒有轉診信息的鏈接:

$("a").click(function() { window.location = $(this).attr("href"); return false; }); 

編輯:只是做了一些測試&它看起來像Firefox的實際確實通引用信息通過window.location更改。所以不幸的是,這不是一個完整的/跨瀏覽器的解決方案...

也作爲sczizzo在下面的評論中指出,可能有時間,這將是不可靠的(例如,我不知道如果/當您點擊Firefox中的鏈接以在新標籤中打開鏈接時,如何觸發click)。

+0

我不確定這會按預期工作。瀏覽器可能完全繞過jQuery的事件處理程序。 – sczizzo 2010-03-17 00:05:54

+0

@sczizzo:你是對的(看到更新的答案),但我不認爲有這樣做的傻瓜式的方式(除了Cory Larson的建議,使用像閃光之類的東西),我認爲這是最簡單的答案至少將覆蓋大多數情況。 – Alconja 2010-03-17 00:29:19

+0

知道window.location不會削減它是有幫助的,但這個答案是超級進化的,這不是一個論壇,而是一個問答網站,考慮改寫它。謝謝 – 2014-10-15 07:00:39

10

一個快速解決方案,使no-referer鏈接打開。

function open_link(url) 
{ 
    instance = window.open("about:blank"); 
    instance.document.write("<meta http-equiv=\"refresh\" content=\"0;url="+url+"\">"); 
    instance.document.close(); 
    return false; 
} 

經過測試。在FF,IE,Chrome中工作。

+0

還沒有嘗試過,但有很大的意義:o – andufo 2012-12-11 16:32:56

+0

不適用於Chrome 54.0.2840.99 m – bbodenmiller 2016-11-23 02:24:09

相關問題