跟踪观看者观看某个视频的时间

时间:2017-07-18 16:43:02

标签: javascript reactjs video video.js

我正在尝试跟踪观看者观看某个视频的时长,我对React JS中某些媒体事件的处理方式感到有些困惑。

  • 当视频被跳到视频的后半部分并停一会儿时,它会调用onPause而不需要按暂停按钮吗?

  • 此外,我对onTimeUpdate的作用感到困惑。

1 个答案:

答案 0 :(得分:0)

请在此处查看HTML音频/视频事件监听器参考: https://www.w3schools.com/tags/ref_av_dom.asp

您可能需要'readystate'属性:

  

表示音频/视频元素的就绪状态:

     

0 = HAVE_NOTHING - 无论音频/视频是否是信息   就绪

     

1 = HAVE_METADATA - 音频/视频的元数据已准备就绪

     

2 = HAVE_CURRENT_DATA - 当前播放位置的数据是   可用,但没有足够的数据播放下一帧/毫秒

     

3 = HAVE_FUTURE_DATA - 当前和至少下一个的数据   框架可用

     

4 = HAVE_ENOUGH_DATA - 有足够的数据可以开始播放

所以,我想你会在setTimeout上使用一个计数器来计算播放视频的时间。

var counter = 0;
var timer = setTimeout(function() { 
    var vid = document.getElementById("myVideo");
    var state = vid.readystate;
    if( state != 0 ) counter++;
    console.log( counter + " seconds its been played" );
} , 1000 );