判断video.js中视频真正处于播放状态并可以用来监听视频播放次数

在回调函数中添加监听,

var myPlayer = videojs('my-video', {},function(){

  this.on('timeupdate', function() {

    //somethings

  })

})

这个监听中的代码会一直执行,所有如果只监听一次,做一个判断

if($(".vjs-remaining-time-display").html()=='0:00'){ //视频真正开始播放
//somethings
}

 ps:这段代码后来经过测试,在视频播放完点击replay时,不会进入条件,于是改为

if($(".vjs-remaining-time-display").html()=='0:00' || (this.currentTime()==0 && $(".vjs-remaining-time-display").html()=='-0:00'))
{ //视频真正开始播放
//somethings
}
但是在QQ浏览器中又监听不到,最后又修改了判断条件,并设置一个变量来控制只执行一次,最终代码见下:

var myPlayer = videojs('my-video', {},function(){
  var oneTime = true;
  this.on('ended', function () {
  console.log('结束播放');
  oneTime = true;
  });
    this.on('timeupdate', function() {
    if ($(".vjs-remaining-time-display").html() != '0:00' && oneTime) { //判断视频真正开始播放 和 重新播放
        //somethings
      oneTime = false;
    }
    })
})

原文地址:https://www.cnblogs.com/toggle/p/9047283.html