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