我正在寻找检测设备是移动设备(手机或平板电脑)还是台式机。我想过使用mousemove
ormouseenter
事件,以便在触发此事件时,可以将全局布尔标志设置IsDesktop
为 true。
这是一个好主意还是鼠标事件也可以在移动设备上触发?
谢谢。
我正在寻找检测设备是移动设备(手机或平板电脑)还是台式机。我想过使用mousemove
ormouseenter
事件,以便在触发此事件时,可以将全局布尔标志设置IsDesktop
为 true。
这是一个好主意还是鼠标事件也可以在移动设备上触发?
谢谢。
您必须意识到这里有两种不同的情况:
在第二种情况下,您不需要做太多其他事情,只需实现两组事件。在第一种情况下,您可能想要加载替代模板;对于小屏幕(触摸)设备来说更直观的一种。这是你应该检查的东西。
由于移动设备上的像素要密集得多,因此实际上没有办法检测屏幕尺寸。查看 User-Agent 字符串是一个好的开始。
如果您不担心屏幕大小并且不需要单独的模板,那么您不需要做任何特别的事情。只需实现两组事件。
鼠标事件中有sourceCapabilities
字段,可用于检查浏览器是否启用触摸。
但仅存在于基于 Chromium 的浏览器中,处于试验阶段,因此不推荐用于生产。