HTML5正确检测语言

时间:2013-12-28 12:30:21

标签: javascript html5 browser internationalization

我已经在javascript中阅读了大约200个关于浏览器语言检测的链接,除了默认的html5输入类型之外,似乎没有什么能够很好地满足我的要求。

例如:

  • 我将系统设置为en-GB,输入类型日期显示为dd / mm / yyyy
  • 我将系统设置为en-US,输入类型日期显示为mm / dd / yyyy

使用以上任一设置:

  • 当我查询navigator.language时,总是表示en-US
  • 当我使用标题检查时,总是表示en-GB
  • 我似乎没有navigator.globalisation所以没有那些东西可以工作。
  • 我的用户代理没有语言组件

ios safari,ios chrome,ie11,mac chrome,windows chrome,android chrome唯一一致的是日期输入始终正确显示系统格式。

HTML5如何做到这一点,我该如何利用它?或者这是HTML5中你不能做的另一件事,比如触发内置验证器?

1 个答案:

答案 0 :(得分:1)

  

HTML5如何做到

以下是建议的实施:

  

鼓励浏览器根据输入元素语言或用户首选语言环境隐含的语言环境的约定,使用显示日期,时间和数字的用户界面。使用页面的区域设置将确保与页面提供的数据保持一致。

表示使用输入元素的lang属性或浏览器设置。

  

我该如何利用它?

一组CSS类,lang属性,LESS / SASS扩展,以及将input元素重新设置为类似于超链接的行为的相关JavaScript事件将是可能的。

未来的选择是Web组件:

Can Web Components be used to create custom input elements?

<强>参考