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

260
Vistas
Javascript Reproducir video al pasar el mouse (múltiples videos)

Tengo el siguiente código JavaScript que funciona muy bien cuando paso el cursor sobre un video. Me gusta cómo el inicio y la parada se dividen en funciones y me permite personalizar el juego flotante exactamente como quiero. Sin embargo, este código solo funciona en el primer video de la página y tengo varios videos que se cargan dinámicamente en la página.

Me gustaría modificar este código para que funcione en todos los videos de la página. Estoy pensando que tal vez las funciones deban llamarse dentro de un bucle. No estoy seguro porque no conozco bien JavaScript, por lo que cualquier ayuda sobre cómo modificar este código sería muy apreciada.

 const video = document.querySelector("video"); function startPreview() { video.muted = true; video.currentTime = 5; video.playbackRate = 2.5; video.play(); } function stopPreview() { video.currentTime = 5; video.playbackRate = 1; video.pause(); } let previewTimeout = null; video.addEventListener("mouseenter", () => { startPreview(); previewTimeout = setTimeout(stopPreview, 3000); }); video.addEventListener("mouseleave", () => { clearTimeout(previewTimeout); previewTimeout = null; stopPreview(); });
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Puede hacer delegación de eventos para manejar todos los videos. Asi que:

 document.body.addEventListener('mouseenter', (event) => { if (event.target.matches('video') { // start playing } });

Más información sobre el método matches() en MDN .

También modificaría los métodos de inicio y detención para tomar el elemento de video como parámetro:

 function startPreview(video) { video.muted = true; video.currentTime = 5; video.playbackRate = 2.5; video.play(); }

Y pásales el event.target .

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