• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

javascript - 可以检测到选择元素的 native UI 覆盖吗?

[复制链接]
菜鸟教程小白 发表于 2022-12-13 11:33:55 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

许多浏览器在元素正下方的简单框中显示选择元素的选项,如下所示:

select regular

但是,例如,在 iOS 上的 Safari 上,选项显示在一个大型的原生微调器中,如下所示: select iOS

有没有一种方法可以检测浏览器是否会为选择元素使用原生 UI 而不是“标准”UI?我想有条件地向使用以下浏览器的用户显示一个选择框这是可用的,我宁愿不必求助于用户代理嗅探。

示例来源:Gonçalo Morais



Best Answer-推荐答案


我认为没有像您要求的那样专门设计为“功能”。我相当确定您将需要诉诸用户代理检测,因为这正是 iOS 上的 Safari 选择 render 元素的方式 - 对我来说,添加 Safari 团队没有任何意义SELECT 元素的属性——或 DOM 上的任何其他地方——来表明这一点。您询问的那个“功能”本质上是用户代理字符串。

您可能知道这一点,但为了完整起见,我在这里提到它。有很多方法可以实现这一点 - 例如,您可以使用 Modernizr - 向其添加自定义测试以进一步根据您的需要对其进行自定义 - 请参阅 this举个例子。或者使用您自己的 JavaScript。或者使用 JavaScript 为 body 或 html 元素添加一个特定的类,指示它是什么浏览器,这样您就可以级联和自定义您的元素(基本上是 Modernizr 所做的)。

我知道这可能不是您希望的答案,但我很确定它在很大程度上是准确的。我很想听听不同的意见。

关于javascript - 可以检测到选择元素的 native UI 覆盖吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33239186/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap