【问题标题】:Javascript Localization in WindowsWindows 中的 Javascript 本地化
【发布时间】:2011-02-04 20:03:07
【问题描述】:

我正在寻找一种方法来本地化 Windows 边栏小工具。它主要是用 Javascript 编写的。我特别想要的是一种获取用户“语言代码”(例如 en-us)的方法,因为语言代码将用于从服务器获取本地化的 XML 文件。

如果有人对如何获得这种语言代码有任何想法,或者更好的是,有一些代码可以完成这项任务,那就太好了。提前致谢。

编辑:看起来请求代码的人删除了他的评论,所以我删除了示例代码,因为它只是杂乱无章。

【问题讨论】:

  • 那么,你需要获取用户的语言吗? stackoverflow.com/questions/1043339/…
  • @Fran 是的,我愿意,谢谢你,虽然我不能 100% 确定给出的解决方案是否有效,但我会尝试它们。我觉得小工具框架中一定有一些我不知道的东西。
  • @user535617 更多链接:forums.digitalpoint.com/showthread.php?t=631706。您只能访问浏览器的语言;如果不安装一些插件(ActiveX 或类似插件),就不可能更深入地了解操作系统的语言。据我所知:)
  • @Fran,好吧,你给我的链接对我有帮助,你原始链接中的一个答案似乎可以达到我的目的。

标签: javascript localization windows-desktop-gadgets


【解决方案1】:

有几种方法可以做到这一点,您希望使用哪种方法取决于您的需求以及您的设置允许您做什么。

  1. navigator.language 会告诉你安装的浏览器有什么语言——而不是用户从首选项中选择的语言。所以这只会给你一个提示,但对你来说可能就足够了。

  2. 地理位置。您可以为此使用几个 API,但同样,它们不会告诉您用户设置的浏览器语言首选项,而是告诉您它们在世界上的哪个位置。同样,这可能是您需要的,也可能不是。

  3. 在服务器上查看 js-file/html-page/etc 的请求标头。具体来说,查看Accept-Language 标头,它反映了用户在浏览器中设置的所需语言首选项。在您的服务器上,将您的 js 放入变量中。唉,这个值不能从 javascript 本身读取,所以你需要它的服务器。

【讨论】:

  • 数字 1 是我要使用的,因为 3 是不可能的,而 2 几乎不值得付出努力。感谢 Fran,我已经找到了这个 navigator.language,但你确实正式发布了这个答案,所以先生,为你赢得胜利。
  • +1 - 顺便说一句,navigator.userLanguage 将为您提供用户选择的语言。 navigator.language 未在 Internet Explorer 以及随后的 Windows 桌面小工具中实现。
【解决方案2】:

这是不可能的。您无法从浏览器中获取该设置,因此它不适用于 Javascript。定义一种标准语言,让用户选择另一种。

【讨论】:

  • 其实 navigator.userLanguage 给了我我想要的。我不认为它在技术上来自浏览器,但它可以在 Javascript 中运行并给我我正在寻找的东西。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-03-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多