私は、HTML5ビデオ要素に関連付けられたrepeat
関数を作成しようとしました。そのため、プレーヤーは、指定した時間枠で繰り返すことができます。HTML5ビデオを所定の時間枠で繰り返します。
私はので、私はプレイヤーが時間1秒に繰り返されますたいrepeat(1,3), repeat(5,7)
、次の順序で、この関数を呼び出します - repeat(5,7)
が呼び出されたときに7sec - repeat(1,3)
は、その後、5秒呼び出されたときに3秒。
しかし、プレイヤーはrepeat(5,7)
が呼び出されたときに1〜3秒のフレームを繰り返し続けます。私は問題があると知っていますの中でvideo.currentTime >= 3
が真であり、プレーヤーは再び1秒の時間に行きます。しかし、私は何をすべきか分かりません。 repeat(5,7)が呼び出されたときにeventListenerを削除しますか?これを処理する適切な方法は何ですか?
repeat(startTime, endTime) {
var video = document.getElementsByTagName('video')[0];
video.addEventListener('timeupdate', function() {
if (elem.currentTime >= endTime) {
elem.currentTime = startTime;
elem.play();
}
}, false);
}
ありがとうございます!私とあなたのコードを比較した後、私はほとんど目的地に到達したことを知っています。私のコードでは 'repeatEventListener'が' repeat'関数のbeginで定義されていますが、私の問題は** 'funcLoop''が' repeat'関数**の中で定義されていることが判明しました。 –
btw、私はあなたのコードをFiddle https://jsfiddle.net/yr4b4ffp/に追加しました。 –