Inicio de sesión

RSS

Distribuir contenido

En línea

En este momento hay 1 usuario y 1 invitado en línea.

Detectar el idioma y país del usuario

Un sencillo código Javascript que permite determinar el idioma y país del visitante, detectando el lenguaje configurado en el navegador que esté utilizando.

El Script consta de una llamada al objeto navigator.userLanguage el cual detecta la configuración de lenguaje del navegador.

idioma_navegador = navigator.userLanguage;

Si imprimos el valor de la variable idioma_navegador la misma contendrá:

undefined

También podemos incorporar una estructura switch() con los países deseados y comparar el valor para así detectar el país del usuario:

switch (idioma_navegador){
case "es-ar":
pais = "Argentina";
break;
case "es-es":
pais = "España";
break;
case "es-cl":
pais = "Chile";
break;
case "es-mx":
pais = "Mexico";
break;
case "es-co":
pais = "Colombia";
break;
case "es-ec":
pais = "Ecuador";
break;
case "es-py":
pais = "Paraguay";
break;
case "es-pe":
pais = "Peru";
break;
case "es-uy":
pais = "Uruguay";
break;
case "es-ve":
pais = "Venezuela";
break;
default :
pais = "Otro";
break;
}

Para detectar el idioma, es necesario armar otra estuctura switch, pero esta vez comparando los dos primeros caracteres de la variable idioma_navegador. Para ello debemos tomar la cadena (Por ejemplo: es-ar) y recuperar los dos primeros caracteres (es) utilizando substring():

idioma = idioma_navegador.substring(0,2)

Código completo: detectar país del visitante

<script type="text/javascript">
idioma_navegador = navigator.userLanguage;
switch (idioma_navegador){
case "es-ar":
pais = "Argentina";
break;
case "es-es":
pais = "España";
break;
case "es-cl":
pais = "Chile";
break;
case "es-mx":
pais = "Mexico";
break;
case "es-co":
pais = "Colombia";
break;
case "es-ec":
pais = "Ecuador";
break;
case "es-py":
pais = "Paraguay";
break;
case "es-pe":
pais = "Peru";
break;
case "es-uy":
pais = "Uruguay";
break;
case "es-ve":
pais = "Venezuela";
break;
default :
pais = "Otro";
break;
}
document.write(pais);
</script>

Nota: el objeto navigator.userLanguage es una capacidad que sólo funciona si el usuario utiliza Internet Explorer 4 o superior.

Autor

Enviar un comentario nuevo

El contenido de este campo se mantiene como privado y no se muestra públicamente.
  • Las direcciones de las páginas web y las de correo se convierten en enlaces automáticamente.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <i> <b> <h2> <h3> <tt> <blockcode>
  • You can enable syntax highlighting of source code with the following tags: <code>, <blockcode>. Beside the tag style "<foo>" it is also possible to use "[foo]". PHP source code can also be enclosed in <?php ... ?> or <% ... %>.
  • Saltos automáticos de líneas y de párrafos.
  • Every instance heading tags will be modified to include an id attribute for anchor linking.
  • Se pueden agregar imágenes a este envío.
  • Every instance of "<!--tableofcontents-->" in the input text will be replaced with a collapsible mediawiki-style table of contents. Accepts options for title, list style, minimum heading level, and maximum heading level as follows: <!--tableofcontents list: ol; title: Table of Contents; minlevel: 1; maxlevel: 3;-->. All arguments are optional and defaults are shown.

Más información sobre opciones de formato


Publicidad