当前位置: 首页 > 面试题库 >

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

危文乐
2023-03-14
问题内容

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

那可能吗?


问题答案:

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

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

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

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

html.touch div {
    width: 480px;
}

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

和Javascript(jQuery示例):

$('html.touch #popup').hide();


 类似资料:
  • 问题内容: 在Javascript / jQuery中,如何检测客户端设备是否有鼠标? 我有一个网站,当用户将鼠标悬停在某个项目上时,该网站会在信息面板上向上滑动。我正在使用jQuery.hoverIntent来检测悬停,但这显然不适用于iPhone/ iPad / Android等触摸屏设备。因此,在这些设备上,我想还原为点按以显示信息面板。 问题答案: +1,两者兼而有之。另一种方法是使用CS

  • 问题内容: 有没有可靠的方法来检测用户是否在jQuery中使用移动设备?类似于CSS @media属性吗?如果浏览器在手持设备上,我想运行其他脚本。 jQuery 函数不是我想要的。 问题答案: 编者注: 对于现代Web应用程序,不建议使用用户代理检测技术。请参阅此答案下方的评论以确认这一事实。建议使用特征检测和/或媒体查询来使用其他答案之一。 除了使用jQuery,您还可以使用简单的JavaSc

  • 问题内容: 在不使用触摸屏设备的情况下,使用媒体查询最安全的方法是什么?如果无法解决,您是否建议使用JavaScript解决方案,例如Modernizr或Modernizr? 问题答案: 我建议使用modernizr并使用其媒体查询功能。 但是,使用CSS时,存在伪类,例如Firefox。您可以使用:-moz-system-metric(touch- enabled)。但是,并非所有浏览器都提供这

  • 问题内容: 我正在寻找可在触摸设备上使用的拖放插件。 我想要与允许“可放置”元素的jQuery UI插件类似的功能。 该插件jqtouch支持拖动操作,但没有落下。 这是仅支持iPhone / iPad的拖放操作。 谁能指出我在适用于android / ios的拖放插件的方向? …或者可能会更新jqtouch插件以实现可投放性,它已经在Andriod和IOS上运行。 谢谢! 问题答案: 您可以使用

  • 问题内容: 这是我在游戏开发中的首次尝试。我刚刚开始尝试libgdx,并了解了游戏编程的不同方面。我查看了示例项目,我可以了解libgdx游戏的整体架构。但是为了掌握游戏动力学的基础知识,我开始玩一些低级的东西,例如如何绘制简单的形状,如何移动它们,如何处理类似的碰撞。 所以我打算写一个死人的简单android游戏(肯定不是一个游戏)。这是主意 最初,我想到要尝试libgdx舞台和演员概念,但排除

  • 本文向大家介绍如何在触摸设备上使用JavaScript拖放?,包括了如何在触摸设备上使用JavaScript拖放?的使用技巧和注意事项,需要的朋友参考一下 对于触摸式设备的JavaScript拖放,可以使用jQuery UI Touch Punch或拖放式Touch。  许多不同的事件可用于成功执行拖放操作, 有许多不同的事件需要附加,以监视整个拖放过程- 拖动开始 拖动 德拉贡特 拖曳 拖曳 下