在函数内部工作时,我无法保持范围。引用正确的范围来访问soundManager的最佳方法是什么?
未捕获的TypeError:无法设置未定义的属性“游戏”
在这行上console.log('SCOPE: ' + MyGame.Game.sound.mute);
$(".audiotoggle").click(function() {
if (MyApp1.gameMuted === false) {
MyApp1.gameMuted = true; //(angular vars)
console.log('MUTE: TRUE (audiotoggle * TRIGGER)');
audtioToggleFunc();
} else {
MyApp1.gameMuted = false; //(angular vars)
console.log('MUTE: FALSE (audiotoggle * TRIGGER)');
audtioToggleFunc();
}
});
var audtioToggleFunc = function () {
console.log('SCOPE: ' + MyGame.Game.sound.mute);
console.log('AUDIO TOGGLE');
if (MyApp1.gameMuted === true) {
MyGame.Game.sound.mute = false;
console.log('MUTE: FALSE (audiotoggle * Function)');
} else {
MyGame.Game.sound.mute = true;
console.log('MUTE: TRUE (audiotoggle * Function)');
}
};
audtioToggleFunc();
最佳答案
我认为这是一个jquery问题。您应该使用:
$(".audiotoggle").click(
$.proxy(function () {
//your listener code
}, this)
);
关于audio - Phaser的示波器问题-使用声音,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36846887/