Foros del Web » Programando para Internet » Javascript »

[SOLUCIONADO] registrar mas de un eventListener para mas elemntos

Estas en el tema de registrar mas de un eventListener para mas elemntos en el foro de Javascript en Foros del Web. Hola que tal muchacho pues bueno estoy empezando a trabajar con puro javascript pero me encontre con un problema algo feo y es que por ...
  #1 (permalink)  
Antiguo 20/11/2013, 22:45
Avatar de sonickseven  
Fecha de Ingreso: diciembre-2012
Ubicación: bogota
Mensajes: 404
Antigüedad: 11 años, 4 meses
Puntos: 2
registrar mas de un eventListener para mas elemntos

Hola que tal muchacho pues bueno estoy empezando a trabajar con puro javascript pero me encontre con un problema algo feo y es que por ejemplo yo tengo tres elementos con el mismo id pero el contenido del data es diferente y quiere que me muestre cuando yo le doy click a cada uno su data!! pero solo muestra el data del primero. Alguien me menciono algo pero la verdad no he encontrado ayuda asi que recurro a uds
Código HTML:
Ver original
  1. <span class="abc" data-cont="5">hola</span>
  2. <span class="abc" data-cont="20">mundo</span>
  3. <span class="abc" data-cont="8">banana</span>
Código Javascript:
Ver original
  1. document.querySelector('.abc').addEventListener('click', function(){
  2.     alert(this.dataset.cont);
  3. }, false);

seria algo como esto pero solo me muestra en el alert 5 y el 20 o el 8 no aparecen ayuda si por que la verdad con jquery si lo puedo hacer pero como les digo quiero prender tambien javascript Graacias!!!
  #2 (permalink)  
Antiguo 20/11/2013, 22:54
Avatar de Carlangueitor
Moderador ლ(ಠ益ಠლ)
 
Fecha de Ingreso: marzo-2008
Ubicación: México
Mensajes: 10.037
Antigüedad: 16 años, 1 mes
Puntos: 1329
Respuesta: registrar mas de un eventListener para mas elemntos

querySelector solo devuelve un objeto, si quieres obtener todos usa querySelectorAll (y también tienes que iterar los elementos para agregar el listener).

Saludos
__________________
Grupo Telegram Docker en Español
  #3 (permalink)  
Antiguo 21/11/2013, 07:43
Avatar de sonickseven  
Fecha de Ingreso: diciembre-2012
Ubicación: bogota
Mensajes: 404
Antigüedad: 11 años, 4 meses
Puntos: 2
Respuesta: registrar mas de un eventListener para mas elemntos

olle gracias amigo pero una pregunta que es iterar?
  #4 (permalink)  
Antiguo 21/11/2013, 08:17
Avatar de sonickseven  
Fecha de Ingreso: diciembre-2012
Ubicación: bogota
Mensajes: 404
Antigüedad: 11 años, 4 meses
Puntos: 2
Respuesta: registrar mas de un eventListener para mas elemntos

ya listos por fin esta solucionado :D gracias amigo por tu ayuda
Código Javascript:
Ver original
  1. function menu(){
  2.    alert(this.dataset.cont);
  3. }
  4.  
  5. [].forEach.call(si('.abc'), function (elem) {
  6.         elem.addEventListener('click', menu);
  7.     });
  8.  
  9. function si(tag){
  10.     return document.querySelectorAll(tag);
  11. }
  #5 (permalink)  
Antiguo 21/11/2013, 14:55
Avatar de Carlangueitor
Moderador ლ(ಠ益ಠლ)
 
Fecha de Ingreso: marzo-2008
Ubicación: México
Mensajes: 10.037
Antigüedad: 16 años, 1 mes
Puntos: 1329
Respuesta: registrar mas de un eventListener para mas elemntos

Justamente eso.
__________________
Grupo Telegram Docker en Español

Etiquetas: jquery
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 11:25.