Foros del Web » Programando para Internet » Jquery »

No funciona .append() jquery

Estas en el tema de No funciona .append() jquery en el foro de Jquery en Foros del Web. Hola a todos, cuando en mi codigo creo un elemento dentro de un div, con .append() y luego intento interactuar con el, no me funciona. ...
  #1 (permalink)  
Antiguo 25/09/2011, 14:18
 
Fecha de Ingreso: noviembre-2009
Mensajes: 846
Antigüedad: 14 años, 5 meses
Puntos: 34
No funciona .append() jquery

Hola a todos, cuando en mi codigo creo un elemento dentro de un div, con .append()
y luego intento interactuar con el, no me funciona.

Por ejemplo:
Código Javascript:
Ver original
  1. $("a").click(function() {
  2.       $(".div").append('<img src="..."/>');
  3. })
  4.  
  5. $("img").click(function() {
  6.     alert("FUNCIONANDO")
  7. })
Aqui la segunda parte del codigo no se ejecuta :S

Gracias, un saludo
  #2 (permalink)  
Antiguo 26/09/2011, 07:06
Avatar de KoswiDigital  
Fecha de Ingreso: abril-2011
Ubicación: Galicia - España
Mensajes: 220
Antigüedad: 13 años
Puntos: 37
Respuesta: No funciona .append() jquery

Hola, pasa lo mismo que en el otro post que publicaras para editar un span y convertirlo en un input. La manera de que funcione la segunda sentencia es colocándola dentro de la primera.

Cuando cargas una página, el navegador lee tu código javascript. Y en ese preciso momento, esa etiqueta <img> no existe. Por eso no funciona. Prueba y me dices ;)


Un saludo.
__________________
http://www.koswidigital.com - Diseño web, Programación web, Fotografía profesional, Retoque digital.
  #3 (permalink)  
Antiguo 26/09/2011, 16:04
 
Fecha de Ingreso: noviembre-2009
Mensajes: 846
Antigüedad: 14 años, 5 meses
Puntos: 34
Respuesta: No funciona .append() jquery

Esta relacionado con el otro post, pero es otra parte ;)

Entonces sera necesario, poner uno dentro del click y otro fuera para los img que ya estan desde el principio, no?

Código Javascript:
Ver original
  1. $("a").click(function() {
  2.       $(".div").append('<img src="http://www.forosdelweb.com/f127/no-funciona-append-jquery-946890/..."/>');
  3.       $("img").click(function() {
  4.           alert("FUNCIONANDO");
  5.       })
  6. })
  7.  
  8. $("img").click(function() {
  9.     alert("FUNCIONANDO");
  10. })

Gracias por toda la ayuda
  #4 (permalink)  
Antiguo 27/09/2011, 09:31
Avatar de KoswiDigital  
Fecha de Ingreso: abril-2011
Ubicación: Galicia - España
Mensajes: 220
Antigüedad: 13 años
Puntos: 37
Respuesta: No funciona .append() jquery

Hola. No quería dar a entender un post duplicado, ya que son cosas distintas.

La respuesta es si. Tienes que ponerlos dos veces por ese mismo motivo que dices. Al cargar, javascript lee tu página, pero los <img> que generes más tarde no existen, por lo que no funciona. Tienes que volver a indicarlo en el código que genere las nuevas etiquetas, en este caso un evento onclick.


Para lo que sea, aquí seguimos. Un saludo.
__________________
http://www.koswidigital.com - Diseño web, Programación web, Fotografía profesional, Retoque digital.
  #5 (permalink)  
Antiguo 28/09/2011, 11:43
Avatar de chichote
Colaborador
 
Fecha de Ingreso: diciembre-2004
Ubicación: Santiago - Chile
Mensajes: 1.868
Antigüedad: 19 años, 4 meses
Puntos: 145
Respuesta: No funciona .append() jquery

Hola Jquery no interpreta de forma natica elementos creados dinamicamente, debes utilizar el metodo live o bien el plugin livequery y quedara algo como esto

Código:
$('img').live('click', function() {
  alert("FUNCIONANDO")
});
Saludos.
__________________
http://chicho.ninja yiaaaa
  #6 (permalink)  
Antiguo 28/09/2011, 14:32
Avatar de KoswiDigital  
Fecha de Ingreso: abril-2011
Ubicación: Galicia - España
Mensajes: 220
Antigüedad: 13 años
Puntos: 37
Respuesta: No funciona .append() jquery

Vaya, sabía que algo se me escapaba. Toda la razón del mundo, live() de jQuery. En todo caso, viene a ser lo mismo, pero de esta manera te ahorras código. Personalmente lo he usado en 2 ó 3 ocasiones a lo sumo y no lo tuve presente en ningún momento a la hora de responder.

Gracias Cherivera ;)


Un saludo.
__________________
http://www.koswidigital.com - Diseño web, Programación web, Fotografía profesional, Retoque digital.

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:31.