Internacionalizando con jQuery.i18n e Internet Explorer

Imagino que con un título de entrada así uno ya se imagina por donde van a ir los tiros del post.

Actualmente estamos envueltos en la vorágine de cierre de proyecto, acercándonos a ese primer “ultimo commit”, con un proyecto en el que estamos desarrollando un visor para explotar recursos turísticos. Una de los requisitos es que la interfaz estuviese en dos idiomas: inglés y español. Como siempre, antes de empezar a reinventar la rueda, miramos que era lo que podíamos reutilizar y encontramos jQuery.i18n un plugin de jQuery que nos permite trabajar con archivos .properties al modo de Java, algo a lo que estamos acostumbrados. Después de revisar el plugin y leer las posibles “Known Issues” vemos que puede encajar en nuestra aplicación.

La instalación es sencilla, el uso es muy dinámico, nos permite cambiar el idioma de la aplicación mediante llamadas Ajax que no necesitan recargar el sitio web y el manejo de los idiomas y ficheros es ágil y no implica tener que tocar nada de nuestros objetos, así que, Voila!!, funcionando en Google Chrome, en Firefox y… oh wait!!, ¡no va en Internet Explorer(IE)!, maldita sea, ¡traigan a Bill Gates!.

Buceando en la red no veo que haya dado problemas con IE. En principio con no poner los IDes de los objetos HTML con el mismo valor que las claves en los archivos .properties parece que no haya nada más detectado. El depurador de IE me lanza el error en la linea:

eval(parsed);

Sin embargo la función eval si está en las especificaciones del navegador. Por lo que tiene pinta de ser algo que le pasamos en parsed. Depurando esta llamada veo que el problema viene de una de las claves que estoy usando en los archivos .properties:

close = Cerrar

IE al ejecutar eval entiende close como la función y es hay donde genera el error, tan fácil de solucionar como:

s_close = Cerrar

Así que recordad, no uséis como claves en los archivos .properties palabras reservadas, que hay mucho navegador quisquilloso por ahí.

Saludos.

Tienes alguna idea de proyecto y quieres convertirla en realidad?
Nos gustaría escucharte, cuéntanoslo

Los hechos nos definen

  • 1km.geomatico.es en los medios

    La idea de 1km.geomatico.es surgió en abril con la intención de ayudar en estos tiempos difíciles. https://twitter.com/geomati_co/status/1253588695296417793 No queríamos sacar ningún provecho económico de ello y contamos con la inestimable ayuda (también…

  • 9 años con el Museo de Ciencias Naturales de Barcelona

    La geolocalización es un atributo clave para la actividad en un museo de ciencias naturales puesto que la cartografía está presente en casi todos sus ámbitos de acción: colecciones, investigación,…

  • Formación GIS personalizada para tu sector

    Los miembros de Geomatico tenemos más de 10 años de experiencia en el sector GIS, incluyendo más de 30 formaciones presenciales y online: cursos para implantar un GIS ambiental en…

  • ¿Quiénes somos Geomatico, la empresa de la web “1km”?

    En 3 días, hemos pasado de ser conocidos sólo en el mundo del GIS y las aplicaciones geográficas a ser la “empresa de 1km.geomatico.es”, tras más de tres millones de…