问题 是否有事件回调知道何时html5 已加载音频并且可播放?


我有控件从其他网站加载mp3文件,但如果它开始加载音频文件一段时间,控件保持禁用几秒钟,似乎没有工作。

如果我在音频控件开始加载资源时显示一个活动指示器,当音频控件准备好开始播放音频并准备好进行用户交互时,是否有可用于隐藏指示器的回调?


11020
2017-08-07 14:50


起源



答案:


element.addEventListener('loadedmetadata', callback, false);

除了形式 loadedmetadataload 也可用于查看歌曲是否也已加载

https://developer.mozilla.org/en/Introducing_the_Audio_API_Extension


10
2017-08-07 15:05



load 不会在Firefox和Chrome上触发。 loadedmetadata 没关系。 - Pavel Vlasov


答案:


element.addEventListener('loadedmetadata', callback, false);

除了形式 loadedmetadataload 也可用于查看歌曲是否也已加载

https://developer.mozilla.org/en/Introducing_the_Audio_API_Extension


10
2017-08-07 15:05



load 不会在Firefox和Chrome上触发。 loadedmetadata 没关系。 - Pavel Vlasov


您可以在MediaControllers上使用事件:

http://dev.w3.org/html5/spec/Overview.html#handler-mediacontroller-oncanplay

例:

var controller = new MediaController();
var audio = document.createElement('audio');
audio.controller = controller;
audio.oncanplay = function (event) {};

2
2017-08-07 15:01