Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

265
Vistas
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 la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda