是否有任何方法可以使用JavaScript来检测给定的浏览器是将焦点化的<select multiple>元素呈现为弹出还是仅作为内联框呈现?
在一些平台上,如Android浏览器和iOS Safari,可以通过比较
<select multiple>
<option>a</option>
<option>a</option>
<option>a</option>
<option>a</option>
<option>a</option>
<select>和
<select multiple>
<option>a</option>
<select>高度是--相同的,因为<select>被缩减为一个带有下拉按钮的单个框。但是在其他设备上,比如Playbook,这个测试会给出一个错误的否定,因为Playbook浏览器呈现扩展的选择列表,并在点击它们时显示弹出窗口。
有人能想出一种可靠的方法来确定是否显示了本机选择弹出窗口吗?
发布于 2011-08-10 03:43:30
看起来masedesign正朝着这个方向发展,但我还要更进一步:
也许可以检测到移动浏览器和的非移动浏览器(例如。RIM,安卓,iOS等VS FF,Chrome,Opera,Safari,IE等)
发布于 2011-08-23 22:37:04
jQuery Mobile 2为您提供了使用自定义菜单而不是本地菜单的选项:
http://jquerymobile.com/demos/1.0b2/#/demos/1.0b2/docs/forms/selects/index.html
发布于 2021-11-14 09:52:09
到2021年,使用指针媒体特性(参见https://stackoverflow.com/a/52854585/13065068)可能是检测浏览器是否可能以模式打开select的更可靠的方法之一。
https://stackoverflow.com/questions/6739285
复制相似问题