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

319
Visualizações
Video HTML5, ¿cómo muestro el último cuadro de video cuando busco finalizar?

Cuando llamo manualmente:

 player.currentTime = player.duration

(1) El video currentTime salta al final (deseado y esperado)

(2) El video comienza a reproducirse desde el principio cuando hago clic en reproducir (deseado y esperado)

(3) El video no se actualiza para mostrar el último cuadro (no deseado e inesperado)

Actualmente, tengo que hacer esto:

 player.currentTime = player.duration - 0.0001 player.play()

Lo que hace que el video salte cerca del final y luego reanuda la reproducción y luego se detiene casi inmediatamente cuando llega al final, lo que soluciona mi problema porque el video ahora muestra el último cuadro.

Sin embargo, esto se siente un poco extraño y no puede ser tan rápido como simplemente configurar la hora actual. ¿Hay una mejor solución? Gracias

NOTA: la operación de búsqueda para finalizar debe ser compatible con la ejecución de código programático (p. ej., ejecución de código en respuesta a un clic de botón). NO estoy usando la barra de búsqueda / fregado incorporada de los jugadores (que funciona bien).

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

0

Creo que encontré la respuesta, en la configuración de firefox player.currentTime = player.duration activa el evento "finalizado", por lo tanto, el video finaliza (sin espacio al final de la barra de búsqueda).

Pero en Chrome es diferente, en la configuración de Chrome player.currentTime = player.duration no activará el evento "finalizado" y hay una pequeña brecha al final de la barra de búsqueda (creo que esto es a lo que se refería). Enlace a mi prueba jsfiddle .

TL: DR El buen viejo problema del proveedor

Además, configurar player.currentTime = player.duration + 99999 en Chrome no activa el evento "finalizado" y la barra de búsqueda todavía tiene un espacio al final.

Entonces, el trabajo actual para este error es

 stopButton.addEventListener('click', () => { player.currentTime = player.duration player.play() // trick for chrome }) // to verify player.addEventListener('ended', (e) => console.log(e.target.ended ? "ended" : "not ended"))

Este código funciona tanto en Firefox como en Chrome y los resultados son exactamente los mismos.

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