2012-06-12 11 views
9

Estoy creando un sitio web donde las personas pueden asociar una información de idioma a contenido.Nombre de idioma del código ISO 639-1 en Javascript

El sitio web utiliza Javascript en gran medida y la información del lenguaje asociada a varios elementos se trata internamente como un código ISO 639-1.

¿Cómo lograr cosas tales como mostrar una lista de nombres de idiomas (en el idioma del usuario) y recuperar el código correspondiente?

+1

Creo que esto es un duplicado de http://stackoverflow.com/questions/3217492/list-of- language-codes-in-yaml-or-json –

Respuesta

3

Creo que tiene que mantener su propia lista de asignaciones a los nombres de los idiomas nativos para cada uno de los idiomas que desea admitir. Pero parece que Wikipedia tiene just what you need.

+0

Lo que necesito sería algún tipo de API web o biblioteca JS. La lista de wikipedia no proporciona el nombre del idioma en diferentes idiomas :-( – aberaud

+1

Ah, veo, lo siento, leí mal y pensé que quería los nombres en el idioma correspondiente (que Wikipedia tiene). Parece ser bastante común presentarlos de esta manera, sin embargo, para su requerimiento, supongo que debe localizar la lista de idiomas, como localizar cualquier otra UI. – Clafou

-1

mejor manera:

<script> 
    var language = window.navigator.userLanguage || window.navigator.language; 
    alert(language); 
    </script> 
13

Hay algunas preguntas similares sobre stackoverflow. Necesitaba una función de JavaScript para obtener nombres en inglés y nombres nativos para diferentes idiomas. Encontré un buen json formatted list of ISO 693-1 language codes on stackoverflow (basado en wikipedia) y creé un gist with two functions getLanguageName and getLanguageNativeName. Aquí es cómo usarlo:

getLanguageNativeName("cv"); // --> "чӑваш чӗлхи" 
getLanguageName("cv"); // --> "Chuvash" 
getLanguageNativeName("cv-RU"); // --> "чӑваш чӗлхи" 
getLanguageName("cv-RU"); // --> "Chuvash" 

Lo utilicé para responder a otra pregunta similar: generate a list of localized language names with links to google translate

+0

Esto es casi todo, pero solo muestra el nombre del idioma en dos idiomas. Por ejemplo, hay es un dropbown en mi sitio para asociar un idioma a algún contenido. Si un chico francés usa mi sitio y desea seleccionar "alemán", debe mostrar "allemand" (nombre francés para el idioma alemán). Lo mismo para un visitante chino, etc. – aberaud

+0

Gracias amigo agradable – toddmo

Cuestiones relacionadas