2011-04-09 129 views
5

當鼠標懸停在鏈接上,在大多數瀏覽器中,它會顯示左下角(又名鉻)或狀態欄中的鏈接?我如何禁用此功能?CSS/HTML:禁用鏈接「懸停」文本

+1

看來你不能手動設置狀態欄文本。在這裏閱讀:https://developer.mozilla.org/en/DOM/window.status – 2011-04-09 14:10:47

+2

對於記錄,當頁面試圖隱藏這樣的信息時,我真的討厭它作爲用戶。我敦促你重新考慮。 – kikito 2012-02-20 11:50:32

回答

9

要做到這一點的唯一方法是刪除'href'中的數據,並將其更改爲javascript onclick,並將window.location設置爲所需的url。

<a href="http://www.stackoverflow.com/">Go To SO</a> 

成爲

<a style="cursor: pointer" onclick="javascript: window.location = 'http://www.stackoverflow.com/';">Go To SO</a> 
+2

通過JavaScript做它可能是禁用URL顯示的唯一方法,但這引起了爲什麼? URL顯示是一項有效且重要的事情,禁用它對用戶體驗不利。 – 2011-04-09 14:08:58

+2

我同意,但這是Bubby4j想要的。我已經看到它做了很多事情(與沒有右鍵單擊的JavaScript警報相同),這不是一個好習慣,但是你不能阻止人們想要這樣做或實際上做它:) – NKCSS 2011-04-09 14:10:06

+0

是的,我知道給OP提供最佳實踐感覺是有用的,但假設querent不知道他們在做什麼低估了他們。我正在製作一個網絡文檔,其中的鏈接mouseover文本分散注意力,因此我正在尋找這個信息。 – 2015-03-26 00:56:13

-1

更改onclick事件:

<a href="#" id="linkid">Link</a> 

<script type="text/javascript"> 
function changeOnClick() { 
    document.getElementById("linkid").onclick=function(e) { 
     location.href="http://www.your-site.com"; 
     return false; 
    } 
} 
window.onload=changeOnClick; 
</script> 

你可以改變任何你想要的狀態欄上顯示的 「#」。

+0

您應該在發佈之前刷新;) – NKCSS 2011-04-09 14:11:41

1

另一個想法:使用重定向器。

將鏈接設置爲您自己的頁面(aspx),並在該頁面中執行Response.Transfer。當使用aspx時,如果你喜歡,你可以使用屬性(在查詢字符串中),以將其用於多個鏈接。這種方式用戶仍然知道它是一個鏈接,但懸停時無法看到實際的URL。

0

我今天得到了同樣的問題..這裏是一個開箱即用的方式來解決這個問題:

只需更換<a><span>和隱藏的組件隱藏地址,
然後使用jQuery創建頁面重定向/ Ajax。

HTML:

<span class="fake-link" > 
     <span class="url" style="display:none;">www.my-url.com</span> 
     Go to My-URL page 
    </span> 

的Jquery:

$(function(){ 
    $('.fake-link').on('click', function(e){ 
     var url = $(this).find('.url:first').html(); 
     window.location = url; 
    }); 
});