首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用什么检测浏览器语言比较好?

用什么检测浏览器语言比较好?

提问于 2017-12-26 08:42:34
回答 2关注 0查看 1.2K

一直在尝试使用JavaScript来检测浏览器语言首选项。

如果我在IE中设置浏览器语言,Tools>Internet Options>General>Languages我该如何使用JavaScript读取这个值?

Firefox的同样的问题。我无法检测到tools>options>content>languages使用的设置navigator.language。

使用 navigator.userLanguage 它会检测通过Start>ControlPanel>RegionalandLanguageOptions>Regional Options选项卡完成的设置

代码语言:txt
AI代码解释
复制
我已经测试过navigator.browserLanguage,navigator.systemLanguage但都没有返回第一个设置的值(Tools>InternetOptions>General>Languages)

我发现了一个链接,详细讨论这个问题,但问题仍然没有答案:(

回答 2

心愿

发布于 2017-12-26 08:55:59

代码语言:txt
AI代码解释
复制
var language = window.navigator.userLanguage || window.navigator.language;
代码语言:txt
AI代码解释
复制
alert(language); //works IE/SAFARI/CHROME/FF

window.navigator.userLanguage仅限于IE浏览器,它是在Windows控制面板 - 区域选项而不是浏览器语言中设置的语言,但是您可以假设使用窗口区域设置为法国的机器的用户可能是法国用户。

navigator.language 是FireFox和所有其他浏览器。

一些语言代码:'it'=意大利,'en-US'=美国英文等。

正如rcoup和WebMacheter在下面评论中所指出的那样,这个解决方法不会让用户在IE浏览器以外的浏览器中查看网站时,在英文方言之间进行区分。

window.navigator.language(Chrome / FF / Safari)总是返回浏览器语言,而不是浏览器的首选语言,但是:“英语用户(gb,au,nz等)拥有Firefox / Chrome / Safari的en-us版本是很常见的。因此,即使用户首选语言window.navigator.language仍然会返回。en-USen-GB

人生的旅途

发布于 2017-12-26 08:53:50

认为这里的主要问题是,浏览器设置实际上并不影响navigator.language通过JavaScript获得的属性。

他们的影响是HTTP'Accept-Language'标题,但是看起来这个值根本不可用。

我已经编写了一个解决方法:我在http://ajaxhttpheaders.appspot.com上打开了一个Google应用程序引擎脚本,它将通过JSONP返回HTTP请求标头。

(注意:这只是一个黑客,如果你没有可用的后台可用,一般情况下,你不应该打电话给页面中的第三方托管的JavaScript文件,除非你有很高的对主机的信任程度。)

我打算永远把它留在那里,所以随时在你的代码中使用它。

以下是一些示例代码(在jQuery中),以便您如何使用它

代码语言:txt
AI代码解释
复制
$.ajax({ 
代码语言:txt
AI代码解释
复制
    url: "http://ajaxhttpheaders.appspot.com", 
代码语言:txt
AI代码解释
复制
    dataType: 'jsonp', 
代码语言:txt
AI代码解释
复制
    success: function(headers) {
代码语言:txt
AI代码解释
复制
        language = headers['Accept-Language'];
代码语言:txt
AI代码解释
复制
        nowDoSomethingWithIt(language);
代码语言:txt
AI代码解释
复制
    }
代码语言:txt
AI代码解释
复制
});

希望有人认为这有用。

编辑:我写了一个小的jQuery插件github包装这个功能:https://github.com/dansingerman/jQuery-Browser-Language

编辑2:按照这里所要求的是在AppEngine上运行的代码(真是超级平凡):

代码语言:txt
AI代码解释
复制
class MainPage(webapp.RequestHandler):
代码语言:txt
AI代码解释
复制
    def get(self):
代码语言:txt
AI代码解释
复制
        headers = self.request.headers
代码语言:txt
AI代码解释
复制
        callback = self.request.get('callback')
代码语言:txt
复制
代码语言:txt
AI代码解释
复制
        if callback:
代码语言:txt
AI代码解释
复制
          self.response.headers['Content-Type'] = 'application/javascript'
代码语言:txt
AI代码解释
复制
          self.response.out.write(callback + "(")
代码语言:txt
AI代码解释
复制
          self.response.out.write(headers)
代码语言:txt
AI代码解释
复制
          self.response.out.write(")")
代码语言:txt
AI代码解释
复制
        else:
代码语言:txt
AI代码解释
复制
          self.response.headers['Content-Type'] = 'text/plain'
代码语言:txt
AI代码解释
复制
          self.response.out.write("I need a callback=")
代码语言:txt
复制
代码语言:txt
AI代码解释
复制
application = webapp.WSGIApplication(
代码语言:txt
AI代码解释
复制
                                     [('/', MainPage)],
代码语言:txt
AI代码解释
复制
                                     debug=False)
代码语言:txt
复制
代码语言:txt
AI代码解释
复制
def main():
代码语言:txt
AI代码解释
复制
    run_wsgi_app(application)
代码语言:txt
复制
代码语言:txt
AI代码解释
复制
if __name__ == "__main__":
代码语言:txt
AI代码解释
复制
    main()
和开发者交流更多问题细节吧,去 写回答
相关文章
新手学Python用什么编辑器比较好?
新手学Python用什么编辑器比较好?工欲善其事必先利其器,选好工具学习更高效。市面上流行的编辑器众多,根据自己的需求选择适合自己。p小白可以选择pycharm配置简单功能强大使用起来省时省心,对初学者非常友好。今天主要介绍SublimeText、IDLE、VIM、PyCharm、Emacs编辑器。
python学习教程
2020/09/25
1.5K0
新手学Python用什么编辑器比较好?
30岁开始学编程,学什么语言比较好?
已经写了十几年代码,马上就要迈向40的老程序员一枚,在感叹青春不在的同时,程序员作为一个技术原则上年龄越大经验越是丰富,其实所谓的年龄大了精力跟不上之类的话,更多的是自我放松导致的结果,心态的积极向上才是永葆青春的关键,有多少程序员因为觉得自己年龄就不要那么难为自己了,放松了对新技术的更新学习,慢慢让自己落伍掉了。
程序员互动联盟
2018/12/24
2.1K0
c语言和java语言哪个比较好
大家好,又见面了,我是你们的朋友全栈君。 c语言和java语言哪个比较好 java语言和c语言的区别有单文件的编译时间java比c语言快;c语言可以直接操作内存,java不能直接操作;c语言可以
全栈程序员站长
2022/09/13
1.3K0
初学自学编程,从什么语言开始起步比较好?
自学编程如果是兴趣方面的可以选择比较简单的入门语言入手,然后再慢慢切入到新的编程语言,目前相对来说比较好入门的编程语言是python,这门语言的集成度非常高,适合零基础的入门学习,集成度高的语言在短时
程序员互动联盟
2018/04/17
1.4K0
初学自学编程,从什么语言开始起步比较好?
什么域名比较好 购买域名要注意什么
建设网站的时候一个好的域名是非常重要的,不仅体现在实用,更具有价值意义,如果做得不错,是具有很大的商业意义。现在域名市场可是非常的火热,找到一个好的域名是很有利用价值的。下来就什么域名比较好等问题大家做个简单介绍。
用户8715145
2021/08/19
9.1K0
科普:浏览器是什么,码农怎么用浏览器?
介绍完服务器我们再聊聊浏览器,浏览器离普通人更近一点,相信大家都用过,你们的电脑里都有这个东西,查看硬盘上都存了些啥的那个叫做文件浏览器,我们今天说的浏览器指的是网络浏览器。
Jack.
2022/02/17
1.8K0
科普:浏览器是什么,码农怎么用浏览器?
用什么软件写html语言,写html代码用什么软件
写html代码的软件:1、Sublime Text;2、Dreamweaver;3、WebStorm;4、HBuilder;5、Notepad;6、VSCode;7、Vim;8、Aptana Studio;9、IntelliJ IDEA。
全栈程序员站长
2022/09/02
8.7K0
用什么软件写html语言,写html代码用什么软件
工业领域用哪些组态软件比较好
在工业领域,经常会使用一些软件来控制生产制造,在使用的工控软件中,可能会经常提到组态(Configuration)一词。
物联网数据可视化PaaS平台
2023/09/12
7230
工业领域用哪些组态软件比较好
面试官:如果要存ip地址,用什么数据类型比较好
在看高性能MySQL第3版(4.1.7节)时,作者建议当存储IPv4地址时,应该使用32位的无符号整数(UNSIGNED INT)来存储IP地址,而不是使用字符串。但是没有给出具体原因。为了搞清楚这个原因,查了一些资料,记录下来。
搜云库技术团队
2021/08/20
1.1K0
浏览器环境检测
本文是直接把seleniumpyppeteer 以及正常打开浏览器 的环境差异直接列出来
爬虫
2020/05/28
2.2K0
面试官:如果要存ip地址,用什么数据类型比较好
来源:blog.csdn.net/mhmyqn/article/details/48653157
Leetcode名企之路
2021/09/14
3290
桌面程序用什么语言开发好[安卓开发用什么语言]
促使程序赢得更多客户的最好、最经济的方法是使之支持多国语言,而不是将潜在的客户群限制为全球近70亿人口中的一小部分。本文介绍四种实现WPF应用程序支持多国语言的解决方案。
Java架构师必看
2022/02/28
1.9K0
桌面程序用什么语言开发好[安卓开发用什么语言]
目前什么挖矿软件比较好用?[通俗易懂]
目前挖矿对于普通人来说还是存在一定门槛的,别的不说,关于钱包地址的设置,挖矿软件的调试等等,网上搜索出来的挖矿软件教程分分钟都能让你放弃,因此,找到一个好的挖矿软件工具,能让你事半功倍,心旷神怡。
全栈程序员站长
2022/11/04
4.8K0
目前什么挖矿软件比较好用?[通俗易懂]
做企业网站用哪种cms比较好?
都2022了,一个企业如果没有网站就有点low了呀,国内的中小型企业居多,在推广上投入的资金也是有限的,很多中小企业就做个网站,基本不去推广,跑题了,我们今天讨论的是企业站用哪种cms比较好;
小唐同学.
2022/02/18
5K0
not not x 和 bool(x) 用哪个比较好?
其实 bool(x) 慢的原因在于它是一个函数调用,而 not not x 就是一条指令,具有更快捷的转换为布尔值的路径,这一点可以从字节码可以看出来:
somenzz
2021/11/12
7770
not not x 和 bool(x) 用哪个比较好?
面试官:如果要存 ip 地址,用什么数据类型比较好?
来源:blog.csdn.net/mhmyqn/article/details/48653157
逆锋起笔
2021/10/19
9000
面试官:如果要存ip地址,用什么数据类型比较好
点击上方“芋道源码”,选择“设为星标” 管她前浪,还是后浪? 能浪的浪,才是好浪! 每天 10:33 更新文章,每天掉亿点点头发... 源码精品专栏 原创 | Java 2021 超神之路,很肝~ 中文详细注释的开源项目 RPC 框架 Dubbo 源码解析 网络应用框架 Netty 源码解析 消息中间件 RocketMQ 源码解析 数据库中间件 Sharding-JDBC 和 MyCAT 源码解析 作业调度中间件 Elastic-Job 源码解析 分布式事务中间件 TCC-Transaction
芋道源码
2022/03/04
3040
面试官:如果要存 IP 地址,用什么数据类型比较好?
在看高性能MySQL第3版(4.1.7节)时,作者建议当存储IPv4地址时,应该使用32位的无符号整数(UNSIGNED INT)来存储IP地址,而不是使用字符串。但是没有给出具体原因。为了搞清楚这个原因,查了一些资料,记录下来。
杰哥的IT之旅
2021/09/03
1.1K0
面试官:如果要存ip地址,用什么数据类型比较好?
在看高性能MySQL第3版(4.1.7节)时,作者建议当存储IPv4地址时,应该使用32位的无符号整数(UNSIGNED INT)来存储IP地址,而不是使用字符串。
码农架构
2021/09/18
1.2K0
面试官:如果要存ip地址,用什么数据类型比较好?
点击加载更多

相似问题

做网站用什么服务器比较好?

0494

代码编辑器的话用什么比较好呢?

3361

cdn和负载均衡,平时用哪个比较好?

2975

2024年创业选择什么项目比较好?

1103

win平台python开发用啥IDE开发工具比较好呢?

1305
相关问答用户
萃橙科技 | 合伙人擅长4个领域
腾讯 | 技术专家擅长2个领域
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档