我想暂时暂停一个视频对象。为了实现这个目标,我感到困惑的是我需要做的复杂比较。也许这是必要的,但似乎它应该更简单。
以下不起作用:
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}},此值以秒为单位。我只能想象这些秒不一定是整数。如果是这种情况,我可以看到我的听众有可能在数字完整的瞬间检查。这看起来有点愚蠢。
如何比较两次相等的时间?
答案 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