Sal*_*leh 9 javascript javascript-framework
我需要使用javascript检测操作系统语言,以便根据语言查看我的页面.
我知道我们可以检测浏览器语言,但这对我来说还不够.
我需要操作系统语言
提前致谢
小智 20
这将返回系统语言:
Intl.DateTimeFormat().resolvedOptions().locale
Run Code Online (Sandbox Code Playgroud)
Ric*_*ook 15
没有跨浏览器的方法来做到这一点.Internet Explorer支持以下内容:
navigator.browserLanguage:浏览器语言navigator.systemLanguage:Windows系统语言navigator.userLanguage:Windows用户特定语言但是没有办法从任何其他浏览器访问这些设置(我可以告诉),所以不要使用它们:navigator.language如果你想维护跨浏览器功能,坚持使用标准(对应于浏览器语言).如果您使用它们,您将把您的网站绑定到特定的操作系统系列(即Windows)和特定的浏览器(即Internet Explorer).你真的想这么做吗?
为什么浏览器语言不适合您的应用程序?
您可能只是考虑以下几个因素来猜测操作系统语言:
\n\nnavigator.browserLanguage:IE语言(菜单、帮助等),与操作系统显示语言相同(如果用户没有更改)。如控制面板 -> 区域和语言 -> 键盘和语言 -> 显示语言navigator.systemLanguage:如控制面板 -> 区域和语言 -> 位置navigator.userLanguage:如控制面板 -> 区域和语言 -> 格式var d=new Date(Date.UTC(2014,1,26,3,0,0));\nvar dateFormat={weekday:"long",year:"numeric",month:"long",day:"numeric"};\nvar result = d.toLocaleDateString("i-default",dateFormat);\nalert(result);\n//e.g. for Russian format ( Control Panel -> Region and Language -> Formats ) \n//result == \'\xd1\x81\xd1\x80\xd0\xb5\xd0\xb4\xd0\xb0, 26 \xd1\x84\xd0\xb5\xd0\xb2\xd1\x80\xd0\xb0\xd0\xbb\xd1\x8f 2014 \xd0\xb3.\'\nRun Code Online (Sandbox Code Playgroud)\n\n然后搜索result在您的服务器上搜索初步生成的不同语言的格式化日期集。
注意!Chrome 返回以其 UI 语言格式化的日期。
\n\n如果您迫切需要了解操作系统语言,请在页面中嵌入flash并利用flash.system.Capability.language:
\n\n注意! Chrome 不允许这种伎俩——Chrome 的 Flash 总是显示browser.language,我想是因为它有自己的 Flash。
navigator.language告诉您浏览器的 UI 语言(菜单、帮助等),您可能会认为在绝大多数情况下它与操作系统语言匹配(特别是对于家用计算机):下载 FF 或 Chrome 时,会根据用户显示下载页面\ 然后是浏览器——在 Windows 上,它是 IE,与操作系统的语言相同。
确实很奇怪,Chrome 在处理浏览器的环境参数时本身就是一个东西,唉。
\n| 归档时间: |
|
| 查看次数: |
18900 次 |
| 最近记录: |