>웹 프론트엔드 >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를 사용하여 브라우저 언어 기본 설정 감지

웹 브라우저에서 사용자가 선호하는 언어를 감지하는 것은 사용자 경험을 개인화하는 데 필수적입니다. 그러나 브라우저마다 언어 기본 설정을 지정하는 다양한 메커니즘이 있습니다.

Internet Explorer에서는 도구 > 인터넷 옵션 > 일반 > 언어. 그러나 JavaScript를 사용하여 이 설정에 액세스하는 것은 여전히 ​​어려운 일입니다.

마찬가지로 Firefox에서는 기본 언어가 도구 > 옵션 > 콘텐츠 > 언어. navigator.언어는 시작 > 제어판 > 지역 및 언어 옵션 > 지역 옵션에서는 브라우저별 설정을 감지하지 못합니다.

이 문제를 조사한 결과 브라우저의 기본 언어 설정이 JavaScript의 navigator.언어 속성에 영향을 미치지 않는 것으로 나타났습니다. 대신 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.