为了账号安全,请及时绑定邮箱和手机立即绑定

关于 html5 <audio> 事件的一些疑问

关于 html5 <audio> 事件的一些疑问

慕慕森 2018-10-02 13:23:00
audio 的 canplaythrough 事件表示的是音频能够不停顿地一直播放,可是这个事件为什么发生在表示浏览器正在下载指定的音频的事件之前(progress事件),而且这两个事件为什么都触发了不止一次?<!DOCTYPE html><html><head>    <meta charset="UTF-8">    <title>Audio-demo</title></head><body>    <audio id="audio-demo" src="http://www.sample-videos.com/audio/mp3/india-national-anthem.mp3" controls preload="metadata">    </audio>    <script>        var audio = document.getElementById('audio-demo');        audio.onloadstart = function() {            console.log('loadstart');        }        audio.onprogress = function() {            console.log('progress');        }        audio.oncanplaythrough = function() {            console.log('canplaythrough');        }    </script></body></html>
查看完整描述

1 回答

?
函数式编程

TA贡献1807条经验 获得超9个赞

因为你的音视频不是一次性下载下来的,而是分段下载播放的,所以会重复触发progress和canplaythrough。


查看完整回答
反对 回复 2018-11-09
  • 1 回答
  • 0 关注
  • 529 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信