ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript を使用してユーザーのブラウザ言語設定を確実に検出するにはどうすればよいですか?

JavaScript を使用してユーザーのブラウザ言語設定を確実に検出するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-12-11 06:51:10697ブラウズ

How Can I Reliably Detect a User's Browser Language Preference Using JavaScript?

JavaScript を使用したブラウザ言語設定の検出

Web ブラウザでのユーザーの優先言語の検出は、ユーザー エクスペリエンスをパーソナライズするために不可欠です。ただし、ブラウザごとに言語設定のメカニズムが異なります。

Internet Explorer では、優先言語は [ツール] > [ツール] で設定できます。インターネット オプション >一般 >言語。ただし、JavaScript を使用してこの設定にアクセスすることは依然として課題です。

同様に、Firefox では、優先言語は [ツール] > [ツール] で設定されます。オプション >内容>言語。 navigator. language は [スタート] > [スタート] で設定された言語を取得します。コントロールパネル >地域と言語のオプション >地域オプションでは、ブラウザ固有の設定を検出できません。

この問題を調査した結果、ブラウザの優先言語設定は JavaScript の navigator. language プロパティに影響を与えないことが判明しました。代わりに、HTTP の「Accept-Language」ヘッダーを変更します。ただし、JavaScript にはこのヘッダーへの直接アクセスがありません。

この課題に対処するための回避策が開発されました。 http://ajaxhttpheaders.appspot.com にある Google App Engine スクリプトは、JSONP を使用して HTTP リクエスト ヘッダーを返します。このスクリプトを利用すると、次の jQuery コードを使用して優先言語を取得できます:

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

さらに、この機能を簡素化する jQuery プラグインが GitHub でリリースされました: https://github.com/ dansingerman/jQuery-Browser-Language

詳細については、この回避策に使用される App Engine コードを次の場所で入手できます。 https://github.com/dansingerman/app-engine-headers.

以上がJavaScript を使用してユーザーのブラウザ言語設定を確実に検出するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。