好的,这东西很棒!我在.js文件中安装了SoundManager 2,并在页面上播放音频。目前,我唯一的问题是弄清楚如何在soundManager.setup({...})之外播放音频。例如,以下方法效果很好...

function mSound() {
/*SETUP SOUND MANAGER 2*/
soundManager.setup({
// where to find flash audio SWFs, as needed
url: 'audio/',
onready: function() {
console.log('SM2 is ready to play audio!');

    /*MY SOUND COLLECTIONS*/
    soundManager.createSound({
    id: 'myIntro',
    url: 'audio/Indonesia.mp3',
    autoPlay: false,
    volume: 15
    });
    soundManager.play('myIntro');

}
});
}


但是如果我尝试将soundManager.play('myIntro')放入另一个函数中,例如...

function mIntro() {
 soundManager.play('myIntro');
}


...音频无法播放。任何建议都会很棒!

谢谢

最佳答案

我想我解决了。通过设置局部变量作为我的mSound()函数的参数,像这样...

function mSound(id,url,volume) {
this.id = id;
this.url = url;
this.volume = volume;

/*SETUP SOUND MANAGER 2*/
soundManager.setup({
url: 'audio/',
onready: function() {
         //console.log('SM2 is ready to play audio!');
     /*MY SOUND COLLECTIONS*/
     soundManager.createSound({
     id: id,
     url: 'audio/'+ url,
     volume: volume
     });
     soundManager.play(id);
     }
});
}


...我现在可以在其他javascript函数中做类似的事情,并播放声音!

mSound('myIntro','Indonesia.mp3',5);


加载自定义函数后,您仍然仍然可以使用soundManager全局对象属性。例如,您可以稍后在代码中像这样暂停曲目...

 soundManager.togglePause('myIntro');


希望这可以帮助某人:)

10-04 17:02