将videojs的当前时间与数字列表进行比较

时间:2017-02-15 10:43:08

标签: javascript compare video.js

我在我的反应应用程序中使用videojs,我希望实现这样的目标:

我拥有的是:

  • 视频js在变量中连续捕获的当前时间。
  • 一个json数组,每个json都有startTime和endTime键。

我想要什么

  • 我想检查当前时间是否具有json的startTimes和endTimes之间的值。

问题:

  • 由于视频播放器的当前时间是一个不断变化的数量/值,我无法弄清楚如何检查它是否具有这么多startTimeS和endTimeS之间的值。

到目前为止我尝试了什么(但显然这是错误的)

 tags.map((item, i) => {
                if( item.time <= currentTime <= item.stopTime){
                    this.props.markerReachedAction(i);
                }
            })

我该怎么做?

1 个答案:

答案 0 :(得分:1)

请使用由&&连接的两个隐式比较的条件,即

if (item.time <= currentTime && currentTime <= item.stopTime)

查看以下代码段以查看问题所在。 1&lt; 3&lt; 2应为假,但计算结果为真。

&#13;
&#13;
$('#a').html('Result of 1 < 3 < 2 = ' + 1 < 3 < 2);
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="a"></div>
&#13;
&#13;
&#13;

由于值不断更新,您还需要连续执行计算。您应该使用setInterval和clearInterval。您可以使用参考链接上的使用示例。