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

142
Vistas
No se puede capturar el elemento de intervalo más cercano al hacer clic con el mouse

La especificación MDN del método closest dice que el método atraviesa el DOM hacia arriba, en dirección a la raíz del documento. Pero, ¿qué método se necesita usar en mi caso en lugar del closest entonces?

En mi página HTML tengo el siguiente código:

 <div class="slider__steps"> <span></span> <span></span> <span class="slider__step-active"></span> <span></span> <span></span> </div>

En mi archivo JS, quiero capturar el elemento de span más cercano a un clic del mouse y cambiar su clase CSS. Intento hacer esto de la siguiente manera:

 moveSlider(elem) { let sliderSteps = elem.querySelector('.slider__steps'); let spans = sliderSteps.querySelectorAll('span'); elem.addEventListener('click', moveThumb); function moveThumb(event) { for (let span of spans) { span.classList.remove('slider__step-active'); } event.target.closest('span').classList.add('slider__step-active'); } }

pero el error que me sale es

TypeError no detectado: event.target.closest(...) es nulo

¿Cómo se capturan realmente estos lapsos con los clics del mouse?

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