Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/385.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何检测移动设备多选?_Javascript_Css_Browser Detection - Fatal编程技术网

Javascript 如何检测移动设备多选?

Javascript 如何检测移动设备多选?,javascript,css,browser-detection,Javascript,Css,Browser Detection,如果我的Multiple select在移动设备上显示为iPhone或Android,我想应用不同的样式,因为它看起来很难看。问题是如何检测它: 无法使用媒体查询宽度,原因可能还包括桌面浏览器 无法依赖像素密度,因为某些平板电脑的密度也大于1 不确定这是否足以 我不想(jQuery)取代,只想确保我设计的是一行丑陋的移动用户界面(而不是桌面版本)。我不在乎解决方案是仅使用html、Javascript、css还是全部的组合。为什么不使用组合?-检测用户代理< /代码>字符串,看看宽度是否低于

如果我的Multiple select在移动设备上显示为iPhone或Android,我想应用不同的样式,因为它看起来很难看。问题是如何检测它:

  • 无法使用媒体查询宽度,原因可能还包括桌面浏览器
  • 无法依赖像素密度,因为某些平板电脑的密度也大于1
  • 不确定这是否足以

我不想(jQuery)取代
,只想确保我设计的是一行丑陋的移动用户界面(而不是桌面版本)。我不在乎解决方案是仅使用html、Javascript、css还是全部的组合。

为什么不使用组合?-检测<代码>用户代理< /代码>字符串,看看宽度是否低于你所考虑的移动。我不确定宽度是否有多个选择的移动呈现,也不确定用户代理是否足够,这就是我问这个问题的原因。我希望有人也有同样的问题并解决了。(最后,我将在Android、iPhone和Windows phone上快速测试它,只是认为这可能是一个很好的问答)。你的问题仅仅是检测移动浏览器吗?多重选择有什么特别之处,使得在移动设备上很难检测和设置样式?那么,所有移动浏览器都显示一行多重选择吗?猜测我们检测“移动”浏览器的方式也很重要。简单地说,我不确定用户代理字符串上的regex是否足以确保multiple-select与mobile类似。可能有一种方法可以检查选项是否可见,或者是否在几行中,或者其他更好的方法。也许它还附加了其他事件?