【问题标题】:How to pause an html 5 video at a specific time如何在特定时间暂停 html 5 视频
【发布时间】:2011-02-24 20:29:43
【问题描述】:

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

我尝试了两种方法:

  1. 使用 timeupdate 事件并查看 currentTime 属性是否大于所需时间并调用 pause()。这在 Firefox 中表现良好,其他浏览器有时会滞后并在视频真正暂停之前渲染额外的帧。
  2. 使用 TimedTracks 和一个将 PauseOnExit 标志设置为 true 的提示。不幸的是,没有浏览器实现 TimedTracks...

你还有其他想法吗?

干杯, 斯蒂芬

【问题讨论】:

    标签: html html5-video


    【解决方案1】:

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

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

    视频元素的回调接口还在开发中,最终会解决这个问题。

    【讨论】:

      【解决方案2】:

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

      【讨论】:

        【解决方案3】:

        您可以结合 Silvia 建议的两种解决方案。如果您使用 timeupdate 事件来查找您在所需时间的 1 秒内的时间,那么您可以在此时使用 setInterval 解决方案。这将提高 SetInterval 解决方案的精度,但您的浏览器只会有更高的负载一秒钟。

        【讨论】:

          猜你喜欢
          • 2018-04-20
          • 2016-07-31
          • 1970-01-01
          • 1970-01-01
          • 2011-06-06
          • 2013-06-16
          • 1970-01-01
          • 2015-06-27
          相关资源
          最近更新 更多