domingo, 13 de janeiro de 2013

Javascript: Pegando o idioma do navegador

Hoje vamos ver mais um tutorial simples para pegar o idioma do navegador. Isso pode ser bastante útil para criar sites ou aplicações HTML5 que possuem várias versões de idioma e você queira automatizá-lo.

Para pegar o idioma em que o navegador está usando, temos duas propriedades por questão de compatibilidade de navegador. Tentei pesquisar qual deles é o "oficial", mas não consegui muitas informações sobre elas, então, para aumentar a compatibilidade, vou passar os dois que são: navigator.browserLanguage e navigator.language.

Testando no Firefox, o browserLanguage retorna undefined, enquanto o language retorna o idioma no padrão ISO 639-1, ou seja duas letras, seguido de um hifen mais duas letras definindo a variação do idioma, por exemplo: PT-BR (Português Brasileiro) e PT-PT (Português Europeu).

Como não sabemos qual das duas funções o navegador do usuário vai estar usando, então vamos ter que adaptar com o seguinte código:

var idioma = (navigator.browserLanguage!=undefined)?  navigator.browserLanguage : navigator.language;

Aqui nós estamos verificando se a primeira propriedade está disponível, se estiver, usamos ela, senão usamos a segunda.Se quisermos só o idioma principal, podemos usar o substring para deixar somente a definição do idioma, sem o regionalismo:

idioma =idioma.substring(0,2);

Então pessoal, é o que tem para hoje!
  

Um comentário: