html5播放事件与视频标签中的播放事件

Gid*_*aac 8 video html5-video

我正在阅读关于HTML5视频标签的文档,并不完全理解它.如果用户单击播放按钮或控制栏上的播放箭头,我认为您只有一个事件,该事件将指示视频正在播放.

但我读到:当播放音频/视频或不再暂停时,"播放"会激活,当音频/视频在暂停或停止缓冲后准备播放时,"播放"会激活.这听起来像第二个只有你暂停视频然后再次播放,而第一个发生然后,但也发生在你第一次启动视频时.但为什么这样呢?为什么不只是一个事件?

bri*_*rls 21

究其原因,不同的是,一旦你点击播放按钮(或调用play方法),paused状态falseplay事件将触发,但是这不能保证视频将真正开始播放.这只是"尝试"发挥.

如果视频在任何时候没有足够的数据,那么它似乎会暂停(但是,再次,paused将是假的)并且waiting事件将被触发.一旦有足够的数据(并且readyState大于或等于HAVE_FUTURE_DATA),playing事件将触发并且视频将恢复.

因此,出于实际目的,play最好设置播放状态的可视指示器,如播放/暂停切换按钮上的图标.使用playing,如果你想知道视频时,实际上玩.例如,您可能希望在waiting事件触发时显示旋转的"加载"图标,然后在playing触发时删除该图标.

(除了没有足够的数据之外,还有其他原因导致视频无法播放,即使您需要它,但这些可能不会导致waitingplaying事件发生.有关HTML标准的详细信息.)