Wykryj w Javascript, gdy pętla <video> HTML5 zostanie ponownie uruchomiona?
Używam pętli wideo HTML5<video loop="true">
i chcę wiedzieć, kiedy pętle wideo. Słuchacz zdarzeńplay
uruchamia się tylko wtedy, gdy wideo jest początkowo uruchamiane, iended
nigdy nie strzela.
Nieprecyzyjny charaktertimeupdate
denerwuje mnie używanieif ( v.currentTime <= 0 )
, ale to działa. Czy jest lepszy sposób na wykrycie ponownego uruchomienia wideo?
Oto moja podstawowa konfiguracja:
<video autoplay="true" loop="true" muted="true">
<source src="vidoe.mp4" type="video/mp4">
<source src="video.webm" type="video/webm">
<source src="video.ogv" type="video/ogg">
</video>
<div id="Video-Time"></div>
<script>
var v = document.getElementsByTagName('video')[0]
var t = document.getElementById('Video-Time');
v.addEventListener('timeupdate',function(event){
t.innerHTML = v.currentTime;
if ( v.currentTime <= 0 ) { console.log("Beginning!"); } // It does trigger when looping, surprisingly
},false);
v.addEventListener('play', function () {
console.log("play!"); // Only triggered when the video initially starts playing, not when the loop restarts
},false);
v.addEventListener('ended', function () {
console.log("ended!"); // Never triggered
},false);
</script>