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

263
Visualizações
EventListener agregado al div principal, pero event.target se convierte en elemento secundario si se hace clic en él

Estoy trabajando con div en forma de tarjeta en los que necesito poder hacer clic. Estoy usando JS (stimulusJS) para agregarles un EventListener , de modo que cuando el usuario hace clic en la tarjeta, el detector de eventos se dispara agregando algunas clases de CSS y llenando algunos campos ocultos con datos que provienen del conjunto de datos div s.

tarjeta

 <div class="card d-flex flex-column data-selectable-target="selectable" data-pricing-model-value="flat_fee"> <div class="self-end"> <strong> <span class="mr-3" data-toggle="tooltip" title="<%= t(".tooltip") %>"><%= icon("exclamation-circle", classes: "h-4 w-4") %></span> </strong> </div> <h5><%= t(".title") %></h5> <p> <%= t(".description") %></p> </div>

controlador JS

 import { Controller } from 'stimulus'; export default class extends Controller { static targets = ["selectable"] connect() { this.selectableTargets.forEach((element) => { element.addEventListener("click", (event) => { this.select(event.target); }); }) } select(element) { element.classList.add("selected") this.selectableTargets.forEach((target) => { if (target != element) { target.classList.remove("pricing-model-selected") } }) } }

Problema: estoy usando event.target esperando obtener el div principal al que agregué EventListener . En cambio, si hago clic en los elementos h5 o p de la tarjeta, se convierten en el event.target estropeando mi implementación. ¿Hay algo que se pueda hacer para garantizar que event.target siempre se refiera al div principal al que se agregó EventListener ?

about 4 years ago · Juan Pablo Isaza
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