如何在 IE-11 中获取本地语言

How to get local language in IE-11

我正在尝试在 IE-11 的 Angular 中获取本地语言。

我在 IE-11 浏览器中将本地语言设置为法语,然后尝试从 IE-11 中获取本地语言,如下所示。

this.lang = window.navigator.languages ? window.navigator.languages[0] : null;
    this.lang = this.lang || window.navigator.language || window.navigator['browserLanguage'] || window.navigator['userLanguage'];

它适用于所有浏览器,但对于 IE-11,我没有获得正确的本地语言。每次都返回 en-US。

任何人都可以帮我解决如何在 Angular8 中为 IE-11 获取正确的本地信息吗?

你在win 7中是否像下面这样在控制面板中设置浏览器本地语言?

在这种情况下,我们可以在 IE 11 中使用 window.navigator.browserLanguage 获取本地语言,即 "fr-FR"。在其他现代浏览器中,我们只能使用 window.navigator.language:

在您的应用中,您可以使用以下代码:

var sAgent = window.navigator.userAgent;
var Idx = sAgent.indexOf("Trident");
//check if IE 11
if (Idx > 0) { 
   this.lang = window.navigator.browserLanguage;
}
else {
    this.lang = window.navigator.language;
}