在Javascript中使用当前时间时,如何比较相等?

时间:2014-03-17 04:22:52

标签: javascript html video

我想暂时暂停一个视频对象。为了实现这个目标,我感到困惑的是我需要做的复杂比较。也许这是必要的,但似乎它应该更简单。

以下不起作用:

video.addEventListener("timeupdate", function() {
    if (this.currentTime == video.endTime) {
        this.pause();
    }
}, false);

以下工作正常:

video.addEventListener("timeupdate", function() {
    if (this.currentTime >= video.endTime && this.currentTime < (video.endTime + 1)) {
        this.pause();
    }
}, false);

怎么会这样?根据{{​​3}},此值以秒为单位。我只能想象这些秒不一定是整数。如果是这种情况,我可以看到我的听众有可能在数字完整的瞬间检查。这看起来有点愚蠢。

如何比较两次相等的时间?

1 个答案:

答案 0 :(得分:0)

所以我不能发表评论,因为我的声誉还没有,但我似乎可以用

得到正确的结局
this.seekable.end(0)

另外,我认为“&gt;”或“&lt;”工作,因为“timeupdate”在250ms左右开心(对不起,我丢失了告诉我这个的链接)
这些将有助于:
- Control start position and duration of play in HTML5 video
- https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/Using_HTML5_audio_and_video