2

我正在寻找检测设备是移动设备(手机或平板电脑)还是台式机。我想过使用mousemoveormouseenter事件,以便在触发此事件时,可以将全局布尔标志设置IsDesktop为 true。

这是一个好主意还是鼠标事件也可以在移动设备上触发?

谢谢。

4

2 回答 2

0

您必须意识到这里有两种不同的情况:

  1. 显示尺寸:大/小
  2. 鼠标和/或触摸

在第二种情况下,您不需要做太多其他事情,只需实现两组事件。在第一种情况下,您可能想要加载替代模板;对于小屏幕(触摸)设备来说更直观的一种。这是你应该检查的东西。

由于移动设备上的像素要密集得多,因此实际上没有办法检测屏幕尺寸。查看 User-Agent 字符串是一个好的开始。

如果您不担心屏幕大小并且不需要单独的模板,那么您不需要做任何特别的事情。只需实现两组事件。

于 2013-01-09T16:44:57.017 回答
0

鼠标事件中有sourceCapabilities字段,可用于检查浏览器是否启用触摸。

但仅存在于基于 Chromium 的浏览器中,处于试验阶段,因此不推荐用于生产。

于 2021-07-09T11:45:12.550 回答