首页 文章

播放音频并重新启动它

提问于
浏览
11

我想在HTML5音频播放器中重新启动音频文件 . 我已经定义了一个音频文件和一个 play 按钮 .

<audio id="audio1" src="01.wav"></audio>
<button onClick="play()">Play</button>

当我单击 play 按钮时,音频文件开始播放,但是当我再次单击该按钮时,音频文件不会停止,直到它到达文件末尾才会再次播放 .

function play() {
    document.getElementById('audio1').play();
}

当我使用 onclick 单击按钮而不是等待歌曲停止时,是否有一种方法可以让我重新启动音频文件?

2 回答

  • 0

    要重新启动歌曲,您需要:

    function play() {
        var audio = document.getElementById('audio1');
        if (audio.paused) {
            audio.play();
        }else{
            audio.currentTime = 0
        }
    }
    

    FIDDLE

    要切换它,就像在再次单击时音频停止一样,当再次点击它从头开始重新启动时,你会做更多的事情:

    function play() {
        var audio = document.getElementById('audio1');
        if (audio.paused) {
            audio.play();
        }else{
            audio.pause();
            audio.currentTime = 0
        }
    }
    

    FIDDLE

  • 24
    soundManager.setup({
    preferFlash: false,
    //, url: "swf/"
    onready: function () {
        soundManager.createSound({
            url: [
                "http://www.html5rocks.com/en/tutorials/audio/quick/test.mp3", "http://www.html5rocks.com/en/tutorials/audio/quick/test.ogg"
            ],
            id: "music"
        });
        soundManager.createSound({
            url: [
                "http://www.w3schools.com/html/horse.mp3", 
            ],
            id: "horse"
        });
        soundManager.play("music"); 
    }
    

    })beginDelayedInit();

    并启动马并暂停当前在点击事件中播放的所有其他声音:

    $("#horse").click(function () {
    soundManager.stopAll();
    soundManager.play("horse");
    

    });

相关问题