我正在使用SoundManager2.js作为跨浏览器音频功能的框架。我试图理解文档,但是在停止一个音频文件并播放另一个音频文件时遇到了一些麻烦。

有人可以给我一个加载多个音频文件并能够使用该框架在它们之间“交换/切换”的示例吗?

最佳答案

您可以在开始所需的声音之前调用soundManager.stopAll()soundManager.pauseAll()(documentation)。相信下面的代码应该可以从我之前编写的一些代码中挑选出来:

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", "http://www.w3schools.com/html/horse.ogg"
            ],
            id: "horse"
        });
        soundManager.play("music"); //start playing annoying music
    }
}).beginDelayedInit();

并开始在点击事件中暂停当前正在播放的所有其他声音:
$("#horse").click(function () {
    soundManager.stopAll();
    soundManager.play("horse");
});

DEMO

关于javascript - 使用SoundManager 2 js播放多个文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20057002/

10-08 21:15