javascript检测桌面触摸和鼠标支持

javascript检测桌面触摸和鼠标支持,javascript,touch,browser-feature-detection,Javascript,Touch,Browser Feature Detection,触控设备应该如何区分纯触控和同样有鼠标的设备?(就像今天的一些笔记本电脑) 在应用程序中,需要优先考虑所有鼠标功能,如果运行应用程序的设备仅支持触摸,则需要更改功能 如果触控设备也有鼠标指针,逻辑建议应用程序应该将该设备视为普通桌面,并且还可以添加触摸支持,但样式本身应该对鼠标事件作出响应。 实现正常触摸检测,如下所示: 文件中的“ontouchend” 检测计算机是否处于桌面状态的一种方法可能是检查屏幕分辨率: window.screen.width >= 1280 // desktop

触控设备应该如何区分纯触控和同样有鼠标的设备?(就像今天的一些笔记本电脑)

在应用程序中,需要优先考虑所有鼠标功能,如果运行应用程序的设备仅支持触摸,则需要更改功能

如果触控设备也有鼠标指针,逻辑建议应用程序应该将该设备视为普通桌面,并且还可以添加触摸支持,但样式本身应该对鼠标事件作出响应。 实现正常触摸检测,如下所示:

文件中的“ontouchend”

检测计算机是否处于桌面状态的一种方法可能是检查屏幕分辨率:

window.screen.width >= 1280 // desktop 

但这并不太好,因为有些设备可能具有非常大的视口分辨率,而有些笔记本电脑可能具有较低的分辨率…

经过一些研究,我发现最好的解决方案是使用以下代码:


因此,它的工作方式是,给出body元素类名,表示设备和方向,通过这个类名,我可以猜测用户是否有鼠标。(class
desktop
已应用)

这篇文章是相关的:触摸屏台式机、笔记本电脑显示器的复制品怎么样?try and seelets表示您检测到鼠标并增强了鼠标的ui,但用户正在使用监视器进行导航,并希望它像在平板电脑上一样工作。yea表示我希望垂直导航菜单移动到鼠标的对面,就像在mac中一样,以帮助用户达到目标。但若用户使用触摸屏,那个么我只想让他们上下拖动菜单。现在我看到了一个新功能,它不是触摸、点击或拖动。这是悬停。在一些三星手机中。这类似于移动鼠标…让我们暂时忽略这一点我不明白你的问题是什么?用例的实现与这个问题无关。这只是关于设备功能的检测。