【问题标题】:Anyone know what navigator.platform returns on Chrome OS?有人知道 navigator.platform 在 Chrome OS 上返回什么吗?
【发布时间】:2019-07-30 23:45:18
【问题描述】:

我有检测操作系统的代码:

            var isPC = isWindows();
            function isWindows(){
                return navigator.platform.indexOf('Win') > -1
            }

            var isMAC = isMac();
            function isMac(){
                return navigator.platform.indexOf('Mac') > -1
            }

            var isLINUX = isLinux();
            function isLinux(){
                return navigator.platform.indexOf('Linux') > -1
            }

但我不知道(找不到)Chrome OS 的 navigator.platform 值, 有人知道吗?

【问题讨论】:

  • CrOS 根据以下文章:stackoverflow.com/questions/7385479/…
  • 根据this post,返回“Linux i686”。但该帖子自 2015 年以来未更新。
  • @user3051640 该帖子显示了navigator.userAgent(以及其他)包含的内容。这不一定是navigator.platform 返回的内容。您可能是对的,但从那篇文章中并不清楚。
  • 所以我猜 navigator.platform = "Linux" 和 navigator.userAgent 的组合包含 CrOS。

标签: javascript browser operating-system


【解决方案1】:

navigator.platform 不返回唯一标识 ChromeOS 的字符串。

在我的 Chromebook (HP Chromebook 11) 中使用 Google Chrome 上的 JavaScript 控制台,navigator.platform 返回:

navigator.platform “Linux X86_64”

改为使用navigator.userAgent

navigator.userAgent 返回 ChromeOS 独有的子字符串“CrOS X86_64”。下面是来自我的 HP Chromebook 11 的 Google Chrome 上 JavaScript 控制台的示例返回值。

navigator.userAgent "Mozilla/5.x (X11; CrOS X86_64 13904.97.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.167 Safari/537.36"

【讨论】:

  • 正如目前所写,您的答案尚不清楚。请edit 添加其他详细信息,以帮助其他人了解这如何解决所提出的问题。你可以找到更多关于如何写好答案的信息in the help center
猜你喜欢
  • 2017-05-06
  • 1970-01-01
  • 2022-06-28
  • 1970-01-01
  • 2011-07-23
  • 2020-01-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多