给定秒的视频事件

时间:2013-03-15 15:18:46

标签: html5 video

当前视频时间达到给定值时,需要播放下一个视频,但不知道为什么应该获取currentTime的事件根本不会被触发?也许有人知道为什么(显然最简单的任务是造成大多数问题的那些)

   function setupVideoPlayer() { 
var currentVideo = 1;
// i.e. [video url, start time, end time]
var videos = [["1.mp4", 0, 4], ["2.mp4", 3, 7]];
var videoPlayer = document.getElementById('videoPlayer');
// set first video clip
videoPlayer.src = videos[0][0]; // 1.mp4
// Syncrhonization function should come here


videoPlayer.addEventListener('timeupdate', function(e){
    if (this.currentTime == videos[currentVideo-1][2]) {
        currentVideo += 1;
        this.src = videos[currentVideo-1][0];
        this.play();
    }
}, true);

// It makes sure the seek will happen after buffering 
// the video
videoPlayer.addEventListener('progress', function(e) {
    // Seek to start point
    this.currentTime = videos[currentVideo-1][1]; 
}, false)
}

1 个答案:

答案 0 :(得分:1)

我建议将时间检查更改为>而不是=因为currentTime事件不是整合者

if (this.currentTime == videos[currentVideo-1][2]) {

变为

if (this.currentTime > videos[currentVideo-1][2]) {

(或者您可以将其转换为测试的集成商)

如果还有其他问题值得为此事件添加console.log(this.currentTime),以确定它是否触发了代码