Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

161
Visualizações
Cómo agregar un detector de eventos a todos los elementos de la matriz

así que esto es novato... pero estoy tratando de completar un desafío con más diligencia debida que solo descargar la respuesta,

mi código html actual es:

 <!DOCTYPE html> <html lang="en" dir="ltr"> <head> <meta charset="utf-8"> <title>Drum Kit</title> <link rel="stylesheet" href="styles.css"> <link href="https://fonts.googleapis.com/css?family=Arvo" rel="stylesheet"> </head> <body> <h1 id="title">Drum 🥁 Kit</h1> <div class="set"> <button class="w drum">w</button> <button class="a drum">a</button> <button class="s drum">s</button> <button class="d drum">d</button> <button class="j drum">j</button> <button class="k drum">k</button> <button class="l drum">l</button> </div> <footer> Made with ❤️ in London. </footer> <script src="index.js" charset="utf-8"></script> </body>

mis codigos javascript:

 document.querySelector("button").addEventListener("click", handleClick); function handleClick() { alert("I got clicked!"); } document.querySelectorAll(".drum")[1, 2, 3, 4, 5, 6].addEventListener("click", handleClick);

esencialmente, el código actual está ejecutando el detector de eventos solo para el primer y último elemento de la matriz, tratando de agregarlo a los 6 pero estoy atascado

gracias a todos

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

document.querySelectorAll(".drum").forEach(el => el.addEventListener("click", handleClick));

Necesita un forEach para ejecutar código en todos los elementos.

about 4 years ago · Juan Pablo Isaza Relatório

0

En lugar de adjuntar oyentes a cada botón, agregue uno al contenedor ( set ) y, usando la delegación de eventos , deje que ese oyente capture todos los eventos que "hacen crecer" el DOM de sus elementos secundarios y llame a una función.

 const set = document.querySelector('.set'); set.addEventListener('click', handleClick, false); function handleClick(e) { if (e.target.matches('button')) { const { textContent } = e.target; console.log(`Banging the ${textContent} drum!`); } }
 <h1 id="title">Drum 🥁 Kit</h1> <div class="set"> <button class="w drum">w</button> <button class="a drum">a</button> <button class="s drum">s</button> <button class="d drum">d</button> <button class="j drum">j</button> <button class="k drum">k</button> <button class="l drum">l</button> </div> <footer> Made with ❤️ in London. </footer>

Documentación adicional

  • Asignación de desestructuración
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda