Open musicode opened 9 years ago
abort
canplaythrough
emptied
interruptbegin
interruptend
pause
play
更多详情参考 HTML Standard
或参考 官方 demo
假设我们要播放一个视频,当点击 play 按钮(或调用 play 方法),video.paused 会置为 false,并触发 play 事件,但这并不保证 video 会立即开始播放,它只是尝试去播放。
如果在任意时间点,video 没有足够的数据可用了,它就会暂停(同样的,video.paused 置为 false),并触发 waiting 事件。一旦有了足够的数据(readyState >= HAVE_FUTURE_DATA),就会触发 playing 事件,这时视频会重新开始播放。
因此,play 适合获取动作状态,playing 适合获取播放状态。比如,当触发 waiting 事件时,显示 loading,当触发 playing 事件时,移除 loading。
通过元素的 buffered 属性可以获取缓冲数据。
abort
事件canplaythrough
事件emptied
事件interruptbegin
事件interruptend
事件pause
事件,然后重新播放才会触发play
事件,需要注意的是,这只是一个动作,并不表示立即就会开始播放更多详情参考 HTML Standard
或参考 官方 demo
loadeddata VS canplay VS canplaythrough
play VS playing
假设我们要播放一个视频,当点击 play 按钮(或调用 play 方法),video.paused 会置为 false,并触发 play 事件,但这并不保证 video 会立即开始播放,它只是尝试去播放。
如果在任意时间点,video 没有足够的数据可用了,它就会暂停(同样的,video.paused 置为 false),并触发 waiting 事件。一旦有了足够的数据(readyState >= HAVE_FUTURE_DATA),就会触发 playing 事件,这时视频会重新开始播放。
因此,play 适合获取动作状态,playing 适合获取播放状态。比如,当触发 waiting 事件时,显示 loading,当触发 playing 事件时,移除 loading。
buffer
通过元素的 buffered 属性可以获取缓冲数据。