」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > Long Hover技巧詳解及應用

Long Hover技巧詳解及應用

發佈於2025-04-16
瀏覽:141

[2

最近,我遇到了一個相當尷尬的CSS監督。 我正在開發一個網站,其中包含一個狹窄的側邊欄,其中包含圖標。 缺乏描述性文本的空間,設計的設計需要可訪問但最初隱藏的工具提示,該工具提示是由長時間懸停觸發的。 工具提示將在三秒鐘懸停後出現。 Long Hover 我最初的方法涉及JavaScript狀態管理:

一個狀態變量,可跟踪工具提示可見性(可見/隱藏)。 該狀態將在相關的HTML元素上更新類。

mouseenter
  1. mouseleave
  2. 在將狀態設置為
  3. 工具提示將保持隱藏狀態( mouseleave )。
  4. 這是一個反應項目,因此使用JavaScript狀態感到自然。但是,回想起來,它被證明是不必要的複雜。
  5. 鼠標事件感覺有點不可靠,並且單獨使用CSS更加簡潔,有效地實現了整個功能。 令人尷尬的實現:當CSS解決方案容易獲得時,我不必要地利用JavaScript庫。 我保留了React UI,但刪除了JavaScript狀態管理。 解決方案涉及一個簡單的CSS transition-delay
  6. 屬性:
  7. 。事物 { 過渡:0.2s; } .thing:懸停{ 過渡 - 延遲:3s; / *僅延遲懸停動畫,而不是關閉 */ }
  8. 這個優雅的單線完美地實現了所需的長期懸停效果。
這種方法並未完全解決觸摸屏可訪問性。當屏幕讀取器處理可訪問的文本和桌面用戶時,只有觸摸用戶可能會錯過圖標標籤。 假設光標可用性,我的項目針對大型屏幕,但觸摸可訪問性仍然是一個令人擔憂的問題。 如果元素是一個鏈接,則

:Hover 可能會在初始點擊上激活。 如果鏈接導致帶有明確標題的頁面,則可能會提供足夠的上下文。 否則,用於觸摸事件的JavaScript事件處理仍然是一個可行的選擇。

最新教學 更多>

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3