Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Asignar eventos a elementos que aun no existen.

Estas en el tema de Asignar eventos a elementos que aun no existen. en el foro de Frameworks JS en Foros del Web. Planteamiento del problema: Tenemos un DIV cuyo contenido se carga dinamicamente via ajax dependiendo de un menu, cuando el contenido ha sido inyectado en el ...
  #1 (permalink)  
Antiguo 31/07/2010, 00:17
 
Fecha de Ingreso: agosto-2008
Ubicación: Puebla, Mexico.
Mensajes: 84
Antigüedad: 16 años, 4 meses
Puntos: 0
Asignar eventos a elementos que aun no existen.

Planteamiento del problema:

Tenemos un DIV cuyo contenido se carga dinamicamente via ajax dependiendo de un menu, cuando el contenido ha sido inyectado en el DIV, dentro de ese contenido existen elementos que en jquery son empleados para asignarles un evento [un tooltip en este caso], pero no podemos poner el evento dentro del document ready de la siguiente manera, ya que esos elementos existen solo despues de que han sido inyectados.

Código Javascript:
Ver original
  1. $(function(){
  2.     $('#elemento').tooltip();
  3. });

Solucionar este problema con eventos como click, keyup...etc, es 'facil' utilizando el metodo live(), pero como se soluciona este problema en particular?

Una solucion rapida seria incluir de manera intrusiva el javascript que crea el tooltip dentro del arhivo que estamos llamando via ajax, pero existe alguna otra opcion sin que tengamos que recurrir a js intrusivo?
  #2 (permalink)  
Antiguo 31/07/2010, 07:56
 
Fecha de Ingreso: junio-2008
Ubicación: Colombia
Mensajes: 207
Antigüedad: 16 años, 5 meses
Puntos: 12
Busqueda Respuesta: Asignar eventos a elementos que aun no existen.

si existe se llama, livequery una de los mejores plugins que puede haber, el funcionamiento es muy sencillo.

Código PHP:

$('#elemento').livequery(function(){
  $(
this).tooltip();
}); 
Con esto los elementos que aparezcan dentro de la pagina seran tratados de forma normal si necesidad de responder a ningun evento ni forzandolo.

Ahora con evento estandar como click, botones que aparecen.
Código PHP:

$('#elemento').livequery('click', function(){
  
// haz algo al clickear
}); 
  #3 (permalink)  
Antiguo 31/07/2010, 14:35
 
Fecha de Ingreso: agosto-2008
Ubicación: Puebla, Mexico.
Mensajes: 84
Antigüedad: 16 años, 4 meses
Puntos: 0
Respuesta: Asignar eventos a elementos que aun no existen.

el tooltip se activa mediente hover, livequery creo que quedo resuelto cuando jquery implemento el metodo live(), quise hacerlo mediante live pero arroja errores en el plugin, probare usando livequery, pero pense que habia otra solucion.

Garacias.

Etiquetas: asignar, elementos, eventos
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 10:30.