2012-09-12 35 views
1

我正在研究一個具有可用作工具欄的頁腳的Web應用程序,它也顯示信息。該應用程序的佈局是有彈性的,所以頁面底部始終顯示頁腳;沒有滾動。由於與此問題無關的原因,我們認爲頁面底部是形成工具欄元素的理想場所。阻止觸發Chrome狀態欄的錨標記

我使用Chrome時出現的問題是,有兩種情況是狀態欄獲取並覆蓋了一些正在顯示的信息。首先是在徘徊在su魚風格菜單上時。當鼠標懸停在菜單元素上時狀態欄會顯示目的地(目前爲止很好),但在某些情況下,它會卡住,直到頁面刷新(Chrome bug?)纔會消失。

第二個問題可以在jsfiddle中看到。由於Jquery UI滑塊使用錨標籤,所以移動它會觸發一個狀態欄,顯示當前位置(很沒用的恕我直言)。問題是在移動滑塊時更新了頁腳上的一些信息,因此Chrome的狀態欄阻止我以這種方式呈現信息。狀態欄也被卡住,因爲錨標記獲得焦點,但我可以防止使用此代碼:

$("#slider").on("slidestop", function(event, ui) 
{ 
    $("a.ui-slider-handle").blur(); 
}); 

狀態欄仍然得到的方式,而滑動,這打破了我們目前的設計。有什麼我可以做這些標籤,以防止他們觸發狀態欄?謝謝

+0

你的小提琴什麼都不顯示。 – Shmiddty

+0

哎呀抱歉,我忘了更新。它應該現在工作。 – JayPea

回答

2

您可以通過從鏈接中刪除href屬性並在點擊處理程序中重新應用其鏈接功能來實現。

下面是一個例子:http://jsbin.com/ikated/1/edit

但是這是不好的設計,並打破了用戶的重要瀏覽器的功能。它隱藏了鏈接所做的事情,隱藏了鏈接的內容(除非將其重新設置爲使用text-decoration: underline; cursor: pointer;或其他任何用於鏈接的樣式,並且打破了中間點擊功能)。可以用另一個處理程序替換它,但隱藏鏈接目標仍然是欺騙性和用戶敵對模式IMO。

+0

謝謝,這實際上適用於滑塊,因爲它並不是真正意義上的鏈接。我只需要測試一下,看看它是否會在另一個瀏覽器中出現問題,因爲我假設沒有href的標記是無效的html。儘管如此,我仍然必須看看我能做些什麼關於suckerfish菜單。 – JayPea

1

你可以使用

​​

,狀態欄將不再顯示當滑塊按鈕懸停/聚焦。這是最好的解決方案?可能不會,但它有效,我認爲它對可用性沒有任何嚴重影響。

+0

嚴重的影響:它打破了鍵盤控制(箭頭) – amartynov