我目前正在使用HTML5和Javascript進行遊戲。現在,我正在添加聲音,並且還需要經典的「打開/關閉音樂」和「打開/關閉聲音」按鈕。我不想跟蹤所有的音頻對象,並且每次設置其中一個按鈕時都會循環播放它們,所以我宣佈了兩個全局布爾值,音樂和聲音,都默認爲true。當它們成立時,它們各自的音頻對象將播放,如果它們是錯誤的,則它們不會播放。變量更新的Javascript回調
這對於創建對象很簡單,只需要簡單的if語句即可。但是,如果我想在創建後更改對象的狀態,如果用戶更改了任一設置,則會變得不方便。我希望能夠把一個回調的布爾值,實際上是說:(僞)
var music = true;
class Music() {
this.audio = new Audio(fileName);
music.onUpdate(function() {
if(music) {
this.audio.play();
} else {
this.audio.pause();
}
}
if(music) {
this.audio.play();
}
}
此外,它甚至會更好,如果我能級聯這些,所以那幾個的回調可以註冊到相同的變量。我明白,這不是需要定期完成的事情,但是在我徹底改寫這個項目之前,是否有一個簡單的語言功能可以用來實現這一點?
感謝
這已經回答在 http://stackoverflow.com/questions/1759987/listening-for-variable-changes-in-javascript-or-jquery –