如何在特定时间暂停html 5视频

时间:2010-05-27 20:09:17

标签: html5 html5-video

是否有一种优雅的方式可以在特定时间暂停html 5视频?

我尝试了两种方法:

  1. 使用timeupdate事件并查看currentTime属性是否大于所需时间并调用pause()。这在Firefox中运行良好,其他浏览器有时会落后并在视频暂停之前渲染其他帧。
  2. 将PauseOnExit标志设置为true时使用TimedTracks和Cue。不幸的是,没有浏览器实现TimedTracks ......
  3. 你有其他想法吗?

    干杯, 斯蒂芬

3 个答案:

答案 0 :(得分:3)

您可以使用timeupdate事件来检查currentTime,一旦超过停止时间,就暂停它。 timeupdate事件的分辨率可能高达250毫秒,这不是很好。

因此,或者,您可以使用setInterval以更高的速率轮询currentTime,例如每隔50毫秒,当视频超过您的停止时间时暂停视频。这可能更可靠,但会在您的浏览器上产生更高的负载。

视频元素的回调接口仍处于开发阶段,最终将解决此问题。

答案 1 :(得分:1)

听起来您希望视频播放到某个点然后暂停。使用当前API无法做到这一点。但是,您可以使用timeupdate事件在所需时间之前暂停,然后将currentTime设置为所需时间。寻求应该在暂停时工作,所以这应该每次都停在同一帧(模块浏览器错误)。

答案 2 :(得分:0)

您可以将Silvia建议的两种解决方案结合起来。如果使用timeupdate事件来查找所需时间的1秒内,则可以在此时使用setInterval解决方案。这样可以提高SetInterval解决方案的精确度,但是你的浏览器只能承受更高的负载。