我在我的項目中使用Zend,PHP,AJAX,JQuery。問題是,當我將鼠標懸停在網頁上的鏈接上時,如何強制不顯示瀏覽器狀態欄上的鏈接。當您在網頁上的鏈接上進行鼠標懸停時,如何隱藏瀏覽器狀態欄上的鏈接?
最好的例子就是在這個網站上,當你把鼠標懸停在這個網站上的投票鏈接上時,它不會顯示鏈接,點擊之後增加的投票不刷新頁面。
感謝
我在我的項目中使用Zend,PHP,AJAX,JQuery。問題是,當我將鼠標懸停在網頁上的鏈接上時,如何強制不顯示瀏覽器狀態欄上的鏈接。當您在網頁上的鏈接上進行鼠標懸停時,如何隱藏瀏覽器狀態欄上的鏈接?
最好的例子就是在這個網站上,當你把鼠標懸停在這個網站上的投票鏈接上時,它不會顯示鏈接,點擊之後增加的投票不刷新頁面。
感謝
在Stack Overflow上,您看不到地址,因爲它不是鏈接(即,它不是錨點)。這是一個跨度,圖像或其他元素,帶有onclick事件處理程序。
這是確保所有瀏覽器中不存在狀態欄文本的唯一方法,就像老式的JavaScript方法window.status =「」;現在在大多數瀏覽器中都沒有效果。
因此,舉例來說...
[Html]
<img id="clickme" src="myimage.png" alt="My Image" title="Vote">
[JavaScript (jQuery)]
$("#clickme").click(function() { alert("You clicked me"); });
當您使用<a>
元素與一組href
的狀態欄高亮纔會發生。
如果您使用純JavaScript打開您的鏈接,並且未指定href
屬性,則狀態欄中不會顯示任何內容。
...你會違反規則2:http://icant.co.uk/articles/pragmatic-progressive-enhancement/#build – Quentin 2010-02-05 13:35:17
是的,但取決於場景,它可能無關緊要。我沒有看到在不違反規則的情況下做到這一點的可靠方法。 – 2010-02-05 13:55:38
如果你能看到(查看源代碼),就在旁邊的投票鏈接就不是一個鏈接,它是一個圖像。如果點擊它,它會在此鏈接上觸發一個ajax函數調用https://stackoverflow.com/posts/2207467/vote/,該函數更新數據庫。
舊版瀏覽器有類似window.status = "";
的地方,您可以將消息發送到狀態欄,同樣有效地隱藏常規消息。
大多數瀏覽器不再支持此功能。
因此,如果您使用超鏈接 - 或更具體地說是錨點元素<a>
- 與href
屬性,則無法繞過狀態欄。
如果您查看了SO的HTML,您將看到投票向上的「鏈接」根本不是鏈接,而是一個帶有一些JavaScript事件處理程序的圖像,分配給onclick
事件。
那麼爲什麼當鼠標懸停在「投票」上時,光標變成了那個尖的手指?這是因爲CSS cursor
屬性。
.vote img {
cursor:pointer;
}
該CSS來自'all.css'樣式表。
請不要這樣做。很少有人會注意到,除非那些會被非標準行爲所困擾的人。如果您設法隱藏它,用戶仍然可以通過其他方法獲取信息。 – Quentin 2010-02-05 13:36:36
我認爲這是有利於安全的目的,當你點擊投票鏈接,鏈接不會出現在任何地方,投票存儲在數據庫中。無論如何感謝 – NAVEED 2010-02-05 14:29:47