HTML5音频在IOS中播放两种声音

时间:2013-02-27 08:36:54

标签: javascript html5 html5-audio

我想在ios中播放2个声音,因为无法完成,我定义了2个音频对象。

我开始播放第一个声音,当我想播放第二个声音时,我暂停第一个声音并等到第二个结束,然后我从它到达的点开始播放第一个声音。

如果我删除警报(“测试”),您可以检查以下代码;第一个音频从零开始播放,因此当前时间不起作用!

亲切的帮助。 谢谢,

var PlayedTime = 0; ; //in seconds
var AudioObj;       
var audioType = '.mp3';
var isResume = false;
$(document).ready(function () {

    if (!!AudioSound.canPlayType('audio/ogg') === true) {
        audioType = '.ogg' //For firefox and others who do not support .mp3
    }

    AudioObj = document.getElementById('AudioSound');

    document.getElementById('AudioSound').addEventListener('ended', function () {                
        resume();
    });
});
function play1() {
    AudioObj.src = "Images/Sound1" + audioType;
    AudioObj.load();           
}
function play2() {
    PlayedTime = AudioObj.currentTime;  

    AudioObj.pause();
    AudioObj.src = "Images/Sound2" + audioType;
    AudioObj.load();         
    AudioObj.play();
}

function resume() {            
    isResume = true;
    AudioObj.pause();
    AudioObj.src = "Images/Sound1" + audioType;
    AudioObj.load();            
}

function JumpAudio() {
    AudioObj.currentTime = 36;
}
function DataLoadedtoPlay() {
    AudioObj.play();
    if (isResume) {
        isResume = false;
        try {
            alert("test");
            AudioObj.currentTime = PlayedTime;
        }
        catch (e) {
            alert("catch");
        }
    }
}


<div id="containerAud">
    <audio id="AudioSound" onloadeddata="DataLoadedtoPlay()"></audio>
</div>

<input type = "button" onclick="play1()" value="click1"/>
<input type = "button" onclick="play2()" value="click2" />
<input type = "button" onclick="JumpAudio()" value="JumpAudio" />    
</div>

0 个答案:

没有答案