[jQuery-es] Fwd: ¿Fallo mío?
Rafa Garcia
rafa.garcia en fullsix.com
Vie Ene 5 02:32:32 PST 2007
Juan G.Hurtado escribió:
> Buenas,
>
>
>> Buenas,
>>
>> Tengo un pequeño HTML añadido al documento mediante .append(), tal
>> que así:
>>
>> $('#identificador elemento').append('<p>Lorem ipsum <img
>> src="imagen.png" alt="Prueba" /></p>');
>>
>> Quiero añadir otra vez lo mismo, para tener 2 párrafos iguales,
>> salvo que al primero de ellos quiero cambiarle la imagen por otra.
>> Así que después de añadir el nuevo párrafo, (mediante un evento
>> click de la imagen del primer párrafo), hago lo siguiente:
>>
>> $(this).ancestors('elemento').find('p:not(:last) img').remove();
>> $(this).ancestors('elemento').find('p:not(:last)').append('<img
>> src="imagen2.png" alt="Otra imagen" />');
>>
>> El caso es que no hace el .append() de la nueva imagen, aunque sí
>> hace el remove(). Si borro la línea que hace el remove(), sí hace
>> el append().
>>
>> ¿El fallo es de concepto, o es un fallo "superior"?
>>
>> Gracias por todo, un saludo.
>>
>
> Ya he visto el fallo. El .remove() se está cargando la imagen que
> genera el evento click, por lo tanto, después del remove(), cualquier
> investigación del DOM que yo haga a partir de ese objeto será inútil,
> ya que no existe en el DOM. Es decir:
>
> $(this).ancestors('elemento')
>
> Si hago eso después del .delete() no funciona, ya que 'this' se
> refiere a la imagen, que ya no está en el DOM, y por lo tanto no
> tiene 'ancestors'.
>
> Un saludo, y recordad no cometer mis mismos errores ;)
>
Y recuerden aquello, chicos, supervitaminarse y mineralizarse ;-). Buen
ejemplo de "autogestión de errores", Juan.
> --
> Juan G. Hurtado
> [ juan.g.hurtado en gmail.com ]
> [ http://armonia.spiral-static.org/ ]
>
>
>
> _______________________________________________
> jquery-es Lista de correo en español para usuarios de jQuery
>
> * Recuerda que debes utiliza "responder a todos" para enviar tu respuesta a la lista
> * Para abrir un tema de conversación, escribe a jquery-es en scriptia.net
> * Puedes gestionar tu suscripción en http://lists.scriptia.net/listinfo.cgi/jquery-es-scriptia.net
>
>
Más información sobre la lista de distribución jquery-es