启用触控的设备如何区分纯触控和具有鼠标的设备? (就像今天的笔记本电脑一样)
需要在应用程序中优先考虑所有鼠标功能,如果运行应用程序的设备仅具有触摸支持,则需要更改功能。
如果触摸设备也有鼠标指针,逻辑建议应用程序应该将该设备视为普通桌面,并且可能还会添加触摸支持,但样式本身应该响应鼠标事件。
正常的触摸检测是这样实现的:
'ontouchend' in document;
检测计算机是否为台式机的一种方法可能是检查屏幕分辨率:
window.screen.width >= 1280 // desktop
但这不太好,因为某些设备可能具有非常大的视口分辨率,而某些笔记本电脑可能分辨率较低......
答案 0 :(得分:5)
经过一些研究,我发现最好的解决方案是使用这段代码:
<强> https://github.com/matthewhudson/device.js 强>
因此,它的工作方式是通过给出表示设备和方向的body元素类名称,并且我可以猜测用户是否有鼠标。 (类desktop
已应用)