javascript 检查html5视频是否准备就绪

ijxebb2r  于 2022-12-25  发布在  Java
关注(0)|答案(5)|浏览(237)

如果HTML5视频准备好播放,是否会触发JavaScript事件?

qybjjes1

qybjjes11#

刚刚遇到这个问题,虽然它是有点老,我张贴这为未来的读者(谁;像我一样,可能来自谷歌)。
因此,截至今天,这是html5媒体的事件列表(根据W3C):

*中止时:中止时要运行的脚本
*打开播放:当文件准备好开始播放时运行的脚本(当它有足够的缓冲区可以开始时)
*在可以播放时:当文件可以一直播放到结尾而无需暂停进行缓冲时要运行的脚本
*持续时间更改:媒体长度更改时要运行的脚本
*清空后:当发生不好的事情并且文件突然不可用(如意外断开连接)时运行的脚本
*修订日期:媒体播放结束时运行的脚本(对于“感谢收听”等消息非常有用)
*发生错误时:加载文件时发生错误时要运行的脚本
*已加载数据:加载媒体数据时要运行的脚本
*加载的元数据:加载 meta数据(如维度和持续时间)时要运行的脚本
*加载开始:在实际加载任何内容之前,在文件开始加载时运行的脚本
*暂停时:用户或以编程方式暂停媒体时要运行的脚本
*播放:媒体准备好开始播放时要运行的脚本
*正在播放:媒体实际开始播放时运行的脚本
*进行中:浏览器正在获取媒体数据时运行的脚本
*速率变化:每次播放速率更改时运行的脚本(如用户切换到慢动作或快进模式时)
*一个就绪状态更改:每次就绪状态更改时运行的脚本(就绪状态跟踪媒体数据的状态)
*查询:当seeking属性设置为false(表示搜索已结束)时运行的脚本
*正在查找:当seeking属性设置为true(表示搜索处于活动状态)时要运行的脚本
*安装:当浏览器由于某种原因无法获取媒体数据时运行的脚本
*暂停时:由于某种原因,在完全加载媒体数据之前停止提取媒体数据时要运行的脚本
*按时更新:当播放位置改变时运行的脚本(例如当用户快进到媒体中的不同点时)
*体积变化:每次更改音量时运行的脚本(包括将音量设置为“静音”)
*正在等待:当介质暂停但预期会恢复时(如介质暂停以缓冲更多数据时)运行的脚本。

丹茨在找一个可以播放的。

fquxozlt

fquxozlt2#

我假设ready for playback意味着readyState属性等于HAVE_ENOUGH_DATA常量(数值4),根据文档,当readyState属性变为该值时,应触发canplay事件。

093gszye

093gszye3#

很好的讨论...
http://tiffanybbrown.com/2010/07/05/the-html5-video-progress-event/
尤其是第一条评论。
基本上,这是在规范中,但被删除,因为它并不完全走在一起的媒体呈现方式。相反,.buffered被添加。
下面是使用中缓冲的示例:
http://hacks.mozilla.org/2010/08/html5-video-buffered-property-available-in-firefox-4/

7rtdyuoh

7rtdyuoh4#

当视频准备好播放时,您需要处理2个事件。

  • canplay:当视频准备播放但缓冲未完成时激发
  • 可以播放:当视频准备播放和缓冲完成时激发
wtzytmuj

wtzytmuj5#

我发现http://www.w3.org/TR/html5/video.html#mediaevents是非常有用的,因为它列出了所有可用的事件,当谈到html5媒体标签。

相关问题