一尘不染

使用JavaScript检测“触摸屏”设备的最佳方法是什么?

javascript

我已经编写了一个可在台式机和移动设备上使用的jQuery插件。我想知道JavaScript是否可以检测设备是否具有触摸屏功能。我正在使用jquery-
mobile.js来检测触摸屏事件,它可以在iOS,Android等系统上运行,但我也想根据用户设备是否具有触摸屏来编写条件语句。

那可能吗?


阅读 292

收藏
2020-04-25

共1个答案

一尘不染

更新:
在将整个功能检测库引入项目之前,请阅读下面的blmstr答案。检测实际的触摸支持更为复杂,而Modernizr仅涵盖一个基本用例。

Modernizr是一种出色的轻量级方法,可在任何站点上执行各种功能检测。

它只是将类添加到每个功能的html元素中。

然后,您可以在CSS和JS中轻松定位这些功能。例如:

html.touch div {
    width: 480px;
}

html.no-touch div {
    width: auto;
}

和Javascript(jQuery示例):

$('html.touch #popup').hide();
2020-04-25