確定純觸控介面的裝置輸入能力
偵測使用者是否使用純觸控裝置對於適應使用者至關重要的Web 應用程式介面.這個問題的當前答案提供了使用觸控事件功能來實現此目的的方法。然而,這種方法還不夠,因為它無法區分同時具有滑鼠和觸控輸入功能的裝置。
更精確的解決方案是利用 CSS4 媒體互動功能。這些功能允許開發人員查詢滑鼠或觸控螢幕等定點設備的存在性和準確性。可以使用以下選項:
<code class="css">@media (pointer: coarse) { ... } // Limited accuracy pointing device @media (pointer: fine) { ... } // Accurate pointing device @media (pointer: none) { ... } // No pointing device</code>
<code class="css">@media (hover: hover) { ... } // Can hover @media (hover: none) { ... } // Cannot hover</code>
<code class="css">@media (any-hover: hover) { ... } // Any input device can hover @media (any-hover: none) { ... } // No input device can hover</code>
透過將這些媒體查詢合併到JavaScript 中,可以確定使用者的輸入能力:
<code class="js">if(window.matchMedia("(any-hover: none)").matches) { // Touch-only device }</code>
此外,重要的是要考慮到缺少滑鼠輸入也可能表示存在純鍵盤設備。 CSS4 媒體互動功能可以有效偵測這兩種類型的輸入限制。
以上是如何準確判斷Web應用中的觸控設備?的詳細內容。更多資訊請關注PHP中文網其他相關文章!