如何准确跟踪视频标签的当前时间?

时间:2019-07-17 17:39:51

标签: javascript

我想准确地跳到视频标签的特定时间并在视频的特定端点处暂停。

假设我有一个简单的功能:myDuration(5, 9)将从第二个5开始播放视频,并在到达第二个9时暂停视频。

到目前为止,我可以从正确的起点开始播放视频,但似乎无法收听端点并在恰好秒9暂停视频。

我认为问题是我无法在代码中准确地跟踪视频的当前时间,这会导致问题:

if (myVideo[0].currentTime == b) {
                myVideo[0].pause();
 }

有时它会停在第二十秒,有时会停在第二八秒... ???为什么?

如何准确跟踪端点或侦听端点?

代码如下:

    var myVideo = document.getElementsByTagName('video');

    // I want to start from second 5 of the video
    myDuration(5, 9);

    function myDuration(a, b) {

    myVideo[0].currentTime=a;

    myVideo[0].play();

    // I want to pause at exactly second 9 of the video so I listen for it
    myVideo[0].addEventListener("timeupdate", function() {
           if (myVideo[0].currentTime == b) {
                myVideo[0].pause();
            }
        }, false);

    }

0 个答案:

没有答案