【问题标题】:Can I tell if my Chrome Extension is running on Windows?我可以判断我的 Chrome 扩展程序是否在 Windows 上运行?
【发布时间】:2014-10-26 09:10:17
【问题描述】:

在我的 Google Chrome 扩展程序中,我需要将文本复制到剪贴板上,并且我需要知道我的扩展程序是否安装在 Windows 操作系统上。有可能吗?

PS。如果是windows,我会用"\r\n"来代替end-lines,这样多行文字在windows上会更好看。

【问题讨论】:

    标签: javascript windows google-chrome google-chrome-extension


    【解决方案1】:

    至少有两种方式

    1. 你可以简单地依赖navigator.platform

    2. 更好的选择是使用 Chrome API:chrome.runtime.getPlatformInfo():

      chrome.runtime.getPlatformInfo(function callback)

      返回有关当前平台的信息。

      PlatformInfo object 的形式。

      chrome.runtime.getPlatformInfo( function(info) {
        if(info.os == "win") { /* do stuff */ }
      });
      

    【讨论】:

    • 谢谢。第二种选择看起来很有希望。唯一的缺点是它在 Chrome v.36 或更高版本上可用。
    • 我很好奇,有多少人实际运行最新版本的 Chrome?
    • 我刚刚意识到,chrome.runtime.getPlatformInfo 的另一个“缺点”是它是一个异步函数。很多时候我可能需要同步的结果。
    • @c00000fd 通常,尽管您不希望该值在运行时发生变化。缓存它。
    • @c00000fd 我已经为chrome.runtime.getPlatformInfo 编写了一个polyfill,参见github.com/Rob--W/crxviewer/blob/master/src/…。不过,对于您的情况,只需使用 navigator.platform。这是足够可靠和同步的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-20
    • 1970-01-01
    • 2012-05-03
    • 2012-03-28
    • 1970-01-01
    • 2015-07-27
    相关资源
    最近更新 更多