首頁 >web前端 >js教程 >如何使用 JavaScript 可靠地偵測觸控螢幕裝置?

如何使用 JavaScript 可靠地偵測觸控螢幕裝置?

Barbara Streisand
Barbara Streisand原創
2024-12-10 00:28:10640瀏覽

How Can I Reliably Detect Touchscreen Devices Using JavaScript?

使用JavaScript 偵測觸控螢幕裝置:一種最佳化方法

為了跨平台相容性,開發人員經常面臨區分觸控螢幕裝置的挑戰使用JavaScript 的支援和非觸控裝置。這對於根據設備輸入法自訂使用者體驗至關重要。

最初,有人建議 JavaScript 可以依靠 Modernizr 的「touchevents」測試來確定觸控螢幕功能。但是,由於該測試已從 Modernizr 中刪除,因此該方法不再適用。

更新的檢測方法

自2021 年起,一種可靠且全面的觸摸檢測方法- 啟用的瀏覽器將檢查以下屬性:

function isTouchDevice() {
  return (('ontouchstart' in window) ||
     (navigator.maxTouchPoints > 0) ||
     (navigator.msMaxTouchPoints > 0));
}
  • 'ontouchstart'在視窗中檢查是否存在touchstart事件偵聽器,大多數支援觸控的瀏覽器都支援該偵聽器。
  • navigator.maxTouchPoints > 0 驗證瀏覽器是否支援多點觸控手勢。
  • navigator.msMaxTouchPoints > 0 檢查 Microsoft Edge 瀏覽器中的相同功能。

高階案例的進一步閱讀

對於更複雜的觸控偵測場景,請考慮以下資源:

  • [您無法偵測到觸控螢幕by Stu Cox](https://www.stuartelliscox.com/blog/you-cant-detect-a-touchscreen/)
  • [檢測觸控:這是Remy Sharp 的“為什麼”,而不是“如何” ](https://remysharp.com/2013/04/01/detecting-touch/)
  • [Patrick的敏感演示H.勞克](https://www.patrickhlauke.com/getting-touchy-with-javascript)

以上是如何使用 JavaScript 可靠地偵測觸控螢幕裝置?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn