在 IE 6/7/8<select>
中,如果给定了定义的宽度,则元素在打开后不会自动展开。通过浏览器嗅探(使用 jQuery 示例$.browser.msie
和$.browser.version
),我可以在一定程度上检测到当前浏览器,并为相关浏览器添加自定义处理程序以进行选择。
在 jQuery 1.9 中,该$.browser
对象已被删除。我仍在生产中使用旧版本,并且能够浏览器嗅探并相应地显示自动扩展的选择菜单;但是,如果我们要跟上 jQuery 的最新版本,这不是一个长期的解决方案。
我查看了 select via 的属性,for(var i in document.createElement('select')) { ... }
但看不到与菜单是否会自动展开有关的任何明显内容。
有这样的事吗?理想情况下,我正在寻找一种不需要浏览器嗅探的普通解决方案。一个if(!property in document.createElement('select')) { ... }
会很棒的。
[编辑/添加] 我知道 jQuery 迁移并理解它可能会让我们渡过难关。我并不太热衷于为一个(目前)微小的不便加载更多的东西。