Ipad html5 加载多个音频文件

Posted

技术标签:

【中文标题】Ipad html5 加载多个音频文件【英文标题】:Ipad html5 load multiple audio files 【发布时间】:2012-04-26 11:49:04 【问题描述】:

我想预加载多个音频文件。为此,我尝试在 javascript 中创建多个音频元素。

function loadAudio()
    audio1 = new Audio();
    audio1.addEventListener('canplaythrough', isLoaded, false);
    audio1.src = 'assets/audio/Maid with the Flaxen Hair.mp3';
    audio1.load();


function isLoaded()
    audio1.removeEventListener('canplaythrough', isAppLoaded);
    alert('maid');

alert('start audio 2');
audio2 = new Audio();
audio2.addEventListener('canplaythrough', isLoaded2, false);
audio2.src = 'assets/audio/Kalimba.mp3';
audio2.load();


function isLoaded2()
    alert('kalimba');

我只收到第一个警报,第二个从不工作。

我发现我一次只能播放一种声音,但我也只能加载一种吗?对于我创建的每个新音频对象,脚本是否需要另一个用户输入?或者有没有人有另一种方法来为音频创建预加载器?

【问题讨论】:

看:***.com/questions/5194898/html5-audio-multiple-play/… 看:***.com/questions/5194898/html5-audio-multiple-play/… 【参考方案1】:

这可能与 ios 设备上自动播放(以及据我所知自动加载)音频文件的限制有关(请参阅此处:Limitations of HTML5 Audio on iOS 4?)。

简而言之:您不能以编程方式在 ios 设备上启动音频播放,这仅允许在事件处理程序中用于可信(=由用户发起)事件。

【讨论】:

【参考方案2】:

你可以在 IOS 设备上播放多个音频 使用以下方式

    $("#btn").on("click",function()
                        alert("audio clicked");
                        var aud=new Audio();
                        aud.src="music.mp3";
                        aud.play();
                        var aud1=new Audio();
                        aud1.src="intro.mp3";
                        aud1.play();
                    ) 

以上代码在设备上播放多个音频

【讨论】:

以上是关于Ipad html5 加载多个音频文件的主要内容,如果未能解决你的问题,请参考以下文章

通过身份验证从动态内容提供程序加载html5音频

通过身份验证从动态内容提供者加载 html5 音频

HTML5音频和视频

我想在 iPad 上的电话间隙应用程序中自动加载本地视频和音频

最小化 iPad 浏览器 Safari 时仍在播放音频

HTML5 音频加载