javascript - 检测浏览器是否支持自动扩展选择下拉菜单?

标签 javascript

在 IE 6/7/8 中 <select>元素,如果给定一个定义的宽度,打开后不会自动扩展。通过浏览器嗅探(jQuery 示例使用 $.browser.msie$.browser.version ),我可以在一定程度上检测到当前浏览器,并为相关浏览器添加自定义处理程序以进行选择。

在 jQuery 1.9 中 $.browser对象已被删除。我仍在生产中使用旧版本,并且能够浏览器嗅探并相应地显示自动扩展的选择菜单;但是,如果我们要跟上 jQuery 的更高版本,这不是一个长期的解决方案。

我已经通过 for(var i in document.createElement('select')) { ... } 查看了 select 的属性但看不到任何与菜单是否会自动展开有关的明显内容。

有这样的事吗?理想情况下,我正在寻找不需要浏览器嗅探的普通解决方案。一个if(!property in document.createElement('select')) { ... }太棒了。

[编辑/添加] 我知道 jQuery migrate 并且理解它可能会帮助我们渡过难关。我并不过分热衷于为了一个(目前)微小的不便而加载更多东西。

最佳答案

来自 jQuery.browser 的 jQuery API :

We recommend against using this property; please try to use feature detection instead (see jQuery.support). jQuery.browser may be moved to a plugin in a future release of jQuery.

我调查并找到了 jQuery Migrate Plugin它具有 $.browser 功能,代码是 available at github .

关于javascript - 检测浏览器是否支持自动扩展选择下拉菜单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14737597/

相关文章:

javascript - 如何捕获来自另一个域的 iframe 的点击?

javascript - 创建选项卡,每个选项卡都有两个文本区域

javascript - 减少 RxJS 映射表达式中的运算符数量

javascript - 查找谁删除了消息

处理大型对象的 Javascript 构建系统

javascript - 禁用基于下拉选择启用文本框 asp.net javascript

javascript - 为什么我的 HTML5 进度条没有随 jQuery AJAX 变化?

javascript - 使用 html 在网页中显示 PowerPoint 演示文稿

javascript - 在javascript中,如何消除文档中的任何焦点?

javascript - 我无法理解这个声明 :