Kat*_*oak 6 mobile html5 ios html5-audio jquery-mobile
我已经构建了一个应用程序,旨在播放每个声音,因为第一个使用'结束'事件完成.
在我的初始版本中,每个声音都有自己的音频元素,结果如下:
function play_next_audio(){
speaker = $('audio#' + sounds[i++]).get(0);
speaker.addEventListener('ended',play_next_audio);
speaker.play();
}
Run Code Online (Sandbox Code Playgroud)
这适用于所有桌面浏览器,包括Safari,但不会超越iOS上的第一个字母.
我也尝试了一种不同的方法 - 一个音频元素依次加载每个声音.在那里,我尝试绑定'结束'事件以及加载第一个和绑定'canplaythrough'事件.在这两种情况下,它甚至无法在桌面Safari上工作 - 这次成功播放前两个字母.
这是孤立的测试:
http://dev.connectfu.com:42001/app/test-sounds.html
请注意,audio.load()被注释掉了几个地方 - 将它放入或放出似乎没有任何区别.
我究竟做错了什么?如何在iOS上播放一系列声音?非常感谢你的帮助!
Jud*_*ngo 14
更新截至2017年,在几种情况下,iOS上的Safari(或Chrome)上不会触发结束事件.更多信息可以在这里找到:它几乎是2017年,HTML5音频仍在iOS上被破坏.
我已经构建了一个HTML5音频播放器(Chavah Messianic Radio),它可以在iOS上的Safari上"运行".
通过"工作",我的意思是,它在Apple瘫痪的iOS <audio>实现上发挥得最好.在撰写本文时,这包括iOS 5.我已经在iPhone 3及更高版本以及iPad原装,iPad 2和iPad 3上进行了测试.
以下是我的发现:
希望这可以帮助.
< rant >
在此期间:Apple,拜托,请在iOS Safari中为我们提供更好的HTML5支持.以下是您的行动项目Apple:
做这些事情,Apple,你将成为移动HTML5音频的行业领导者,每个人都会模仿你,你将再次领先,网络应用程序将在你的平台上完美运行,同时在其他移动平台上瘫痪.是的,这些功能将使用数据和电池,但原生应用已经这样做了.停止削弱网络应用程序并成为领导者.让HTML5 <audio>成为iOS上的一流公民.
</咆哮>
我不相信 iOS 中的音频或视频支持 .play() 方法。苹果不喜欢在访问页面时自动播放视频或音频的想法。
以下是有关跨平台 HTML5 音频支持状态的有用读物:http://www.phoboslab.org/log/2011/03/the-state-of-html5-audio
归档时间: |
|
查看次数: |
3642 次 |
最近记录: |