Título: reemplazo de textos con javascript? Publicado por: WHK en 17 Octubre 2013, 17:04 pm Hola a todos, estoy haciendo un código en javascript para traducir una página personal con un diccionario de palabras (no vale usar traductor de google) y todo funciona de lujo, está hecho en jQuery pero tengo un pequeño problema:
Traducir esto es fácil: Código: <span>Hola</span> De la siguiente manera: Código: objeto = $('span'); objeto.text('Helo'); El problema viene cuando los textos están entremedio de otros controles, por ejemplo: Código: <div>Nombre: <input type="text" /></div> Porque si le doy un .text() al div voy a eliminar el input de tipo HTML y si le hago un reemplazo solo al texto con .html().replace() voy a sobreescribir el input y probablemente pierda todos sus eventos del DOM. La única solución que encuentro por ahora es hacer el reemplazo de todo, control y texto y tomar todos los eventos asociados a cada control y despues establecerlos nuevamente, el problema es que en ese momento puede que algún evento se gatille sin querer como por ejemplo un onload de una imagen. A alguien se le ocurre alguna idea? Título: Re: reemplazo de textos con javascript? Publicado por: #!drvy en 18 Octubre 2013, 01:38 am Yo hace algun tiempo me hice un "diccionario" basico.
Código
Incialmente. Código Al ejecutarse. Código Tenia algún que otro bug... creo que no pillaba los elementos directos.. pj: Asi: <body>Hola</body>, no actuaria.. y algo mas pero no me acuerdo xD. Espero que te sirva. Saludos Título: Re: reemplazo de textos con javascript? Publicado por: Almapa en 18 Octubre 2013, 09:43 am Has prbado ha designar un "id" para los elementos problemáticos?
Código
Y después ya Código
No lo he probado. Mira a ver si te sirve. Un saludo. Título: Re: reemplazo de textos con javascript? Publicado por: WHK en 24 Octubre 2013, 16:12 pm Hola gracias :) ya lo he solucionado... el tema es que no puedo usar los ids de los objetos porque no tengo acceso para modificarlos, solo tengo acceso desde javascript.
Lo solucioné obteniendo los eventos de cada objeto y luego reescribirlos pegandoles nuevamente los mismos eventos :p Saludos. |