【问题标题】:How to detect that browser is running in Safari on iOS 11 via JavaScript?如何通过 JavaScript 检测浏览器是否在 iOS 11 上的 Safari 中运行?
【发布时间】:2018-02-19 05:36:56
【问题描述】:

我想检测我的网页中的 JS 代码是否在 iOS 11 上的 Safari 中运行,它支持一些新功能。

我可以做类似的事情

if (window.navigator.userAgent.includes('OS 11_0')) {
    // iOS 11
}

但我认为这被认为是不可靠的。

是否有某些功能或 hack 仅适用于 iOS 11 而不适用于其他操作系统,并且可用于检测该版本而无需检查 userAgent

更新:我说的是 getUserMedia,所以我不确定是否有办法在不触发麦克风权限请求的情况下测试它的存在。

【问题讨论】:

  • 这是many questions的副本,请先搜索。而你不能可靠地做到这一点。
  • @JaromandaX 那么这个可以测试的功能是什么?例如if ('blah blah' in window) { // then }
  • @RobG 我不是在问如何检测任何操作系统,我只是在这个特定浏览器上专门询问这个版本的 iOS。例如关于检测 IE11 的问题与我无关。
  • @JaromandaX 非常有用的建议,谢谢。但我正在寻找尝试检测 iOS 11 的人来分享他们的经验。
  • “它支持一些新功能” - 你不能测试这些功能吗?

标签: javascript ios safari


【解决方案1】:

查看this solution,然后您可以执行以下操作:

ver = iOSversion();

if (ver[0]==11) {
    // do something
}

共享的 sn-p 也可用于检测任何特定的 iOS 版本,>iOS 2。

【讨论】:

    猜你喜欢
    • 2018-01-10
    • 2012-09-18
    • 1970-01-01
    • 2012-05-11
    • 2018-01-25
    • 1970-01-01
    • 2018-06-18
    • 2014-10-04
    • 1970-01-01
    相关资源
    最近更新 更多