use*_*657 8 javascript audio html5
音频加载完毕后是否会触发加载事件?我正在创建一个像这样的音频元素.
var myAudio = new Audio("mySound.mp3");
myAudio.load();
Run Code Online (Sandbox Code Playgroud)
尝试添加一个eventListener,但似乎没有触发.
myAudio.addEventListener("load",soundLoaded,false);
Run Code Online (Sandbox Code Playgroud)
jay*_*bee 14
听起来你想要" canplaythrough "活动.当浏览器认为它可以播放整个音频文件而不停止时,它会触发.
尝试:
myAudio.addEventListener('canplaythrough', soundLoaded, false);
Run Code Online (Sandbox Code Playgroud)
加载音频文件时,按此顺序触发7个事件:
请注意,9之前的Internet Explorer版本不支持此功能.
音频标签的实现非常依赖于浏览器。它的支持我会说比视频标签要少,因为它在史蒂夫乔布斯关于 Flash 与 HTML5 圣战的演讲之后大肆宣传,有趣的是它是 Safari 最不支持的。它真正适用于视频标签(在事件处理程序上)不适用于音频标签,但状态仍然正确有什么好处。例如 :
var a = new Audio();
Run Code Online (Sandbox Code Playgroud)
a.networkState并且a.readyState- 通过在计时器上每秒检查一次,您可以轻松了解加载和播放进度。其他有趣的属性:
seeking - 如果 UA 当前正在寻找,则为真seekable - 可能寻找的 TimeRange 对象。played- TimeRangeUA 玩过什么。paused - 如果播放暂停,则为真。ended - 如果播放结束则为真。currentTime - 以秒为单位返回/设置播放位置。duration不要忘记使用canPlayType(type)- 返回"probably"和"maybe"
更新:考虑查看 SoundManager2 - http://www.schillmania.com/projects/soundmanager2/
| 归档时间: |
|
| 查看次数: |
16119 次 |
| 最近记录: |