0

我想在 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>
4

0 回答 0