Código Javascript:
Ver original
var Translation = { es: {'primera frase': 'primera frase traducida al español', 'segunda frase': 'segunda frase traducida al español', 'tu casa es de color %s y tu coche %s' : 'tu casa es de color %s y tu coche %s' }, en: {'hola': 'hello', 'adios': 'good bye', 'tu meme es %s' : 'you "meme" is %s' }, //Definición dl metodo Str Str : function(lang_obj,cadena) { lang_obj = this[lang_obj]; if (!(typeof lang_obj === "undefined")) { if (!(typeof lang_obj[cadena] === "undefined")) { cadena = (lang_obj[cadena]); } } for(i=2;i<arguments.length;i++) { cadena = cadena.replace("%s", arguments[i]); } return cadena; }, }
Para definir los idiomas son propiedades del objecto Translation y las frase identificadora: frase traducida
para mostar una cadena con difente idioma debemos usar el metodo Str que le pasamos el idioma y la cadena identificadora
Código Javascript:
Ver original
document.write(Translation.Str('en','hola'));
Tambien podemos pasar paramatros extra para tener una cadena formateada
Código Javascript:
Ver original
document.write(Translation.Str('es','tu meme es %s','forever alone'));
mas ejemplos de uso
Código Javascript:
Ver original
document.write(Translation.Str('es','tu casa es de color %s y tu coche %s','rojo','verde')); document.write('<br />'); document.write(Translation.Str('en','hola')); document.write('<br />'); document.write(Translation.Str('es','tu meme es %s','forever alone')); document.write('<br />'); document.write(Translation.Str('en','tu meme es %s','forever alone'));
Dejo en enlace del articulo entero
[URL="http://www.webserveis.com/249/multi-idioma-en-javascript/"]Multi-idioma en javascript[/URL]
Espero que sea de ayuda, si hay alguien que sepa como optimizar la función, ya que es mi primer contacto con el lenguaje javascript 100%