好的,这件事太棒了!我在.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');
}
...音频无法播放。任何建议都会很棒!
由于
答案 0 :(得分:1)
我想我解决了。通过设置局部变量作为我的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');
希望这有助于某人:)
答案 1 :(得分:1)
你尝试过这样的事吗?
var sound = soundManager.getSoundById('myIntro');
sound.play();
它正在我的项目中工作。