我有html5音频播放器,如播放,暂停,停止按钮。

function onUpdate()
{
    var isPlaying = (!getAudioElement().paused);
    document.getElementById("playerplay").style.display = (isPlaying)?"none":"block";
    document.getElementById("playerpause").style.display = (isPlaying)?"block":"none";
};

function getAudioElement()
{
    return document.getElementById("id_audio_element");
}

function play() {
    getAudioElement().play();
    onUpdate();
}

function pause() {
    getAudioElement().pause();
    onUpdate();
}

function stop() {
    getAudioElement().pause();
    getAudioElement().currentTime=0;
    onUpdate();
    getAudioElement().load();
}

和音频标签:
<audio id="id_audio_element" onended="onUpdate();load();"><source src="105.ogg" type="audio/ogg"></audio>

它可以完美地在所有浏览器上运行,例如iPhone和iPad的Safari和Chrome。当我调用load()时,尽管我没有调用play(),但音频开始播放。

有人有解决办法吗?谢谢!

最佳答案

如果源未更改,则无需调用load()。如果它正在更改,请在加载后尝试调用pause()。

10-08 18:07