如何使用Javascript获取Firefox扩展的语言环境

oab*_*rca 1 javascript firefox firefox-addon

我花了很多时间试图找到一种方法来获得扩展程序的Javascript代码中的Firefox扩展的区域设置.关闭我是general.useragent.locale,我认为它具有首选的本地化,但Firefox的用户语言可能完全不同.

任何的想法?

nma*_*ier 5

在尝试查询XUL包时,请查看nsIXULChromeRegistry.getSelectedLocale(package).

示例(查询global/toolkit包的语言环境):

Components.classes["@mozilla.org/chrome/chrome-registry;1"]
  .getService(Components.interfaces.nsIXULChromeRegistry)
  .getSelectedLocale('global'); // e.g "en-US"
Run Code Online (Sandbox Code Playgroud)

SDK加载项可以使用以下内容来确定自己的语言环境,但应注意此API标记为"不稳定".

require("sdk/l10n/core").locale
Run Code Online (Sandbox Code Playgroud)

SDK加载项仍可用于nsIXULChromeRegistry.getSelectedLocale(package)通过chrome模块查询其他加载项或浏览器.