Si quieres detectar el idioma o lenguaje del navegador utilizando JavaScript para ejecutar distintas funciones o redirigir a los usuarios a distintas páginas en base a sus acciones puedes usar el siguiente script:
<script type="text/javascript">
var idioma = navigator.language || navigator.userLanguage;
alert ("The language is: " + idioma);
</script>
Para maximizar la compatibilidad con los distintos navegadores obtenemos el idioma del valor navigator.language y en su defecto obtenemos el valor de navigator.userLanguage. Almacenamos en valor en la variable idioma y a modo de ejemplo lo mostramos por pantalla.
Funciona con Internet Explorer, Chrome, Firefox y Safari.
En concreto, Internet Explorer es el único navegador en utilizar navigator.userLanguage, que es el valor establecido en la Opciones Regionales del Panel de Control, no el idioma en concreto del navegador. El resto de navegadores utilizan la variable navigator.language.
Los valores que obtendremos serán de la forma: ‘it’ para Italiano, ‘es’ para Español, ‘en-US’ para Inglés de Estados Unidos.
Hola, como estas? En caso de querer detectar el idioma del navegador y en base a eso redirigir a una página en ese idioma. Es posible?
Por supuesto, te dejo un script que yo utilizo, espero que te sea de ayuda.
// Detecta el lenguaje del navegador
var lgNav = window.navigator.language||navigator.browserLanguage;
// Extrae las dos primeros datos
var lg = lgNav.substring(0, 2);
if(lg == ‘es’){
// detecta y abre idiona español
window.location.href = ‘index-es.html’;
}else if(lg == ‘en’){
// detecta y abre idiona ingles
window.location.href = ‘index-en.html’;
}else if(lg == ‘it’){
// detecta y abre idiona italiano
window.location.href = ‘index-it.html’;
}else if(lg == ‘fr’){
// detecta y abre idiona frances
window.location.href = ‘index-fr.html’;
}else{
// si no es ninguna abre idiona ingles
window.location.href = ‘index-en.html’;
}
en vez de utilizar un if anidado, puedes agregar un switch(opcion) e ir agregando los case