如何检测用户的语言(简单方法) [英] How to detect user’s language (the simple way)

查看:80
本文介绍了如何检测用户的语言(简单方法)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述


可能重复:

用于检测浏览器语言首选项的JavaScript

我试过使用以下js代码检测用户语言,但每种方法都会产生 undefined 。我的用户以两种语言使用该系统 EN & FA

I tried using the following js code for detecting a users language, but each method results in undefined. My users use the system in two languages EN & FA.

我可以通过javascript或jQuery检测用户语言吗?如果是,怎么做?

Can I detect a users language by javascript or jQuery? If yes, how?

演示: http:/ /jsfiddle.net/AqXsp/1/

$('input').live('keyup', function(){
    alert(navigator.userLanguage); // Output this is "undefined"
    alert(navigator.systemLanguage); // Output this is "undefined"
    alert(navigator.browserLanguage); // Output this is "undefined"
})


推荐答案

回答@Pekka指出可能是你最好的打赌。它实际上是一个优雅的解决方案,考虑到JavaScript本身没有这样的功能。

The answer @Pekka pointed to is probably your best bet. It's actually an elegant solution, considering there is no such facility in JavaScript itself.

该解决方案的作者提供了一个非常明确的例子:

The author of the solution provides a very clear example:

var language;
$.ajax({ 
    url: "http://ajaxhttpheaders.appspot.com", 
    dataType: 'jsonp', 
    success: function(headers) {
        language = headers['Accept-Language'];
        nowDoSomethingWithIt(language);
    }
});

当然,您可以将语言设置为一些默认值。结果是一个未解析的字符串,所以在 nowDoSomethingWithIt()中需要更多的逻辑。

Of course, you could set language to some default value. And the result is an unparsed string, so there would need to be some more logic in nowDoSomethingWithIt().

看一下这个工作演示: http://jsfiddle.net/seYLA/

Have a look at this working demo: http://jsfiddle.net/seYLA/

这篇关于如何检测用户的语言(简单方法)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆