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

时间:2013-08-17 19:27:20

标签: javascript firefox firefox-addon

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

有什么想法吗?

1 个答案:

答案 0 :(得分: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"

SDK附加组件可以使用以下内容来确定自己的区域设置,但应注意此API标记为“不稳定”。

require("sdk/l10n/core").locale

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