2017-09-26 1 views
0

J'essaie d'émettre un événement lorsqu'une vidéo a fini de jouer pendant un cycle en boucle. Lorsque je fais this.nativeElement.addEventListener("ended", callsomething);, l'appel terminé n'est effectué que si la vidéo est arrêtée, ce qui n'arrivera pas car elle est en boucle par défaut.Comment savoir qu'un élément HTML Audio/Vidéo est terminé en boucle

J'ai essayé d'utiliser this.nativeElement.addEventListener("timeupdate", callsomething); où la fonction "callsomething" a été vérifiée pour voir si c'était à la fin de la vidéo mais elle n'a jamais retourné la fin exacte et j'ai fini par l'utiliser pour vérifier le début de la vidéo toujours retourné ça. mais alors il s'avère que quand il est en pause cela sera toujours vrai ...

Toute suggestion sur la façon dont je peux savoir que la vidéo a entièrement bouclé une fois?

Répondre

1

je retire la boucle de la vidéo et en ajoutant et « (terminé) = endedFunc() » qui sera ensuite lire à nouveau la vidéo en la bouclant efficacement tout en attrapant la fin de l'événement vidéo.

2

Vous pouvez essayer avec ce qui suit qui est appelé à la fin de la boucle:

this.nativeElement.addEventListener("waiting", callsomething); 
+0

Cela est appelé lorsque la vidéo se charge également. C'est une solution, mais j'essayais d'éliminer la duplication de «trucs d'appel» pour éviter toute ambiguïté. – JonathanL

+0

Vous pouvez définir un drapeau qui vérifie s'il s'agit d'un premier appel à l'événement "waiting" et si ce n'est pas le cas, alors appelez la fonction "callsomething". – Ronnee007