Javascript 如何检测客户端´;s计算机语言/或其他任何语言,以便自动更改我的网站中的语言
有没有办法检测客户端的计算机语言? 我已经用两种语言开发了我的网站:英语和德语。如果德国人打开我的网站,它应该打开德语版本,否则它将打开任何其他来源国的英语版本 我试着搜索谷歌,但只有一个检测浏览器语言的功能。这是最好的方式吗 顺便说一句,我不是在这里要求你的代码,只是关于如何实现这一点的建议,但如果你们想给我展示真实的例子,将不胜感激 在最近的浏览器中,这是您想要的:Javascript 如何检测客户端´;s计算机语言/或其他任何语言,以便自动更改我的网站中的语言,javascript,Javascript,有没有办法检测客户端的计算机语言? 我已经用两种语言开发了我的网站:英语和德语。如果德国人打开我的网站,它应该打开德语版本,否则它将打开任何其他来源国的英语版本 我试着搜索谷歌,但只有一个检测浏览器语言的功能。这是最好的方式吗 顺便说一句,我不是在这里要求你的代码,只是关于如何实现这一点的建议,但如果你们想给我展示真实的例子,将不胜感激 在最近的浏览器中,这是您想要的: if (navigator.language == "de") { alert("Guten Tag!"); } el
if (navigator.language == "de") {
alert("Guten Tag!");
} else {
alert("Good Morning!");
}
在最近的浏览器中,您想要的是:
if (navigator.language == "de") {
alert("Guten Tag!");
} else {
alert("Good Morning!");
}
使用
接受语言
标题。这是用户通过在浏览器选项中设置明确请求的语言(否则默认为浏览器的安装语言)。标题可以包含多种语言,包括评级,例如:
fr,ja,de-AT;q=0.8,de;q=0.6
因此,您需要选择以“en”和“de”开头的语言中评级最高的(或并列第一的)
不幸的是,Accept Language
头不容易被JavaScript访问
在最新版本的Firefoxnavigator中,language
将为您提供该列表中评级最高的语言。不幸的是,如果用户已按“法语、德语”的顺序请求语言,这对您没有帮助,因为您只能看到fr
在其他浏览器中,它为您提供浏览器安装语言,这是一个合理的猜测,但没有用户实际要求的语言好。IE上的browserLanguage
也是一样,还有userLanguage
和systemLanguage
与Windows区域设置相关,这通常是一个更糟糕的猜测
因此,如果您想要“英语和德语之外的最高级别用户配置语言”,最好的方法是读取并解析服务器端的Accept language
头,然后将该语言以字符串形式返回给JS代码。是一个PHP函数,它将帮助您正确解析标题(来自$\u服务器['HTTP\u ACCEPT\u LANGUAGE']
)
无论您做什么,都要提供一种手动切换语言的方法,因为即使是最好的猜测也可能是错误的。使用
Accept Language
标题。这是用户通过在浏览器选项中设置明确请求的语言(否则默认为浏览器的安装语言)。标题可以包含多种语言,包括评级,例如:
fr,ja,de-AT;q=0.8,de;q=0.6
因此,您需要选择以“en”和“de”开头的语言中评级最高的(或并列第一的)
不幸的是,Accept Language
头不容易被JavaScript访问
在最新版本的Firefoxnavigator中,language
将为您提供该列表中评级最高的语言。不幸的是,如果用户已按“法语、德语”的顺序请求语言,这对您没有帮助,因为您只能看到fr
在其他浏览器中,它为您提供浏览器安装语言,这是一个合理的猜测,但没有用户实际要求的语言好。IE上的browserLanguage
也是一样,还有userLanguage
和systemLanguage
与Windows区域设置相关,这通常是一个更糟糕的猜测
因此,如果您想要“英语和德语之外的最高级别用户配置语言”,最好的方法是读取并解析服务器端的Accept language
头,然后将该语言以字符串形式返回给JS代码。是一个PHP函数,它将帮助您正确解析标题(来自$\u服务器['HTTP\u ACCEPT\u LANGUAGE']
)
无论您做什么,都要提供一种手动切换语言的方法,因为即使是最好的猜测也可能是错误的。一种常见的方法是在服务器端处理此问题,并检查客户端的IP地址。请参阅,我会看看这个,谢谢。一种常见的方法是在服务器端处理此问题,并检查客户端的IP地址。请参阅,我会看看这个,谢谢。我已经把它放在我的网站上测试了。。为什么它总是提醒“早上好!”?附言。我已经用safari、Chrome和fire fox对它进行了测试……只有Chrome在corect工作!对不起,我不能在歌剧中使用CMD-K。。我已经把它放在了我的网站上并进行了测试。。为什么它总是提醒“早上好!”?附言。我已经用safari、Chrome和fire fox对它进行了测试……只有Chrome在corect工作!对不起,我不能在歌剧中使用CMD-K。。我现在明白了…谢谢我现在明白了…谢谢