有没有办法使用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浏览器呈现扩展的选择列表,而会在点击它们时显示弹出窗口。
有人能想出一种可靠的方法来确定是否显示原生选择弹出窗口吗?
答案 0 :(得分:1)
看起来 masedesign 正在引领这一点,但我将更进一步:
可能会检测移动浏览器 vs 非移动浏览器(例如RIM,Android,iOS等 VS FF,Chrome,Opera,Safari,IE等)
答案 1 :(得分:0)
jQuery Mobile Beta 2为您提供了使用自定义菜单而非本地菜单的选项:
http://jquerymobile.com/demos/1.0b2/#/demos/1.0b2/docs/forms/selects/index.html