/ / dostęp do SoundManager 2 w różnych funkcjach - javascript, flash, soundmanager2

dostęp do SoundManager 2 w różnych funkcjach - javascript, flash, soundmanager2

Ok, to jest niesamowite! Mam ustawienia SoundManager 2 w moim pliku .js i odtwarzam dźwięk na mojej stronie. Jedyne pytanie w tej chwili, to zastanawianie się, jak odtwarzać dźwięk poza soundManager.setup ({...}). Na przykład następujące działa świetnie ...

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");

}
});
}

Ale jeśli spróbuję umieścić soundManager.play ("myIntro"), w innej funkcji, takiej jak ...

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

... dźwięk nie jest odtwarzany. Każda rada będzie świetna!

Dzięki

Odpowiedzi:

1 dla odpowiedzi № 1

Myślę, że to rozwiązałem. Konfigurując zmienne lokalne jako parametry dla mojej funkcji mSound (), tak jak ...

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);
}
});
}

... Mogę teraz robić fajne rzeczy w ten sposób w innych funkcjach javascript i odtwarzać dźwięk!

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

I nadal możesz używać właściwości globalnych obiektów SoundManager po załadowaniu własnej funkcji. Na przykład możesz zatrzymać swój utwór w ten sposób później w kodzie ...

 soundManager.togglePause("myIntro");

Mam nadzieję, że to pomoże komuś :)


1 dla odpowiedzi nr 2

Próbowałeś czegoś takiego?

var sound = soundManager.getSoundById("myIntro");
sound.play();

Działa w moim projekcie.