Je suis un codeur chevronné d'actionscript et je prends mes premiers coups de poignard à javascript. La plupart du temps, ce n'est pas trop compliqué, mais j'ai rencontré quelques problèmes car je crée un grand nombre de boutons qui ressemblent à des bascules. Voici le code jusqu'à présent (j'en ai enlevé un tas, mais il y en aura environ 20, pas seulement 5).Animer CC HTML5 en essayant de changer une variable globale en appelant une chaîne
var aOneOn = false;
var aTwoOn = false;
var aThreeOn = false;
var aFourOn = false;
var aFiveOn = false;
this.One.addEventListener("click", highlightButton.bind(this));
this.Two.addEventListener("click", highlightButton.bind(this));
this.Three.addEventListener("click", highlightButton.bind(this));
this.Four.addEventListener("click", highlightButton.bind(this));
this.Five.addEventListener("click", highlightButton.bind(this));
function highlightButton(event)
{
console.log("You have selected a button " + event.currentTarget.name); //Three
var newName = "a" + event.currentTarget.name + "On";
console.log("the buttons new name is " + newName); //aThreeOn
console.log("the correct answer is " + aTwoOn); //false
console.log("the button is currently " + this[newName]); //undefined
if(this[newName] == true)
{
console.log("we should be turning it false now");
this[newName] = false;
}
else if (this[newName] == false)
{
console.log("we should be turning it true now");
this[newName] = true;
}
console.log("the button " + newName + " is now " + this[newName]);
}
Cela ne donne pas lieu à newName pouvoir accéder réellement aTwoOn lorsque le bouton est enfoncé à deux, ou l'un des boutons qui fonctionnent comme je l'avais espéré. Je me dis que je manque juste quelque chose quand il s'agit de la portée, mais je n'arrive pas à comprendre ce qui doit être fait.
Merci pour toute l'aide que vous pouvez apporter à cette noobie.
Pouvez-vous décrire ce qui se passe? –
Bien sûr ... Dans le jeu, les élèves auront une sélection de 20 types de problèmes dont ils ont besoin de pratiquer qui seront affichés dans 20 boutons. Quand ils cliquent sur un bouton, il mettra en évidence. Si elles cliquent à nouveau dessus, il ne sera pas mis en surbrillance. Puis, quand ils ont choisi tout ce qu'ils veulent pratiquer, ils vont cliquer sur le bouton Terminé. Cette partie du code active et désactive les différentes options. Une fois qu'ils auront fini, ils passeront en revue et verront lesquels sont activés et les ajouteront à la liste des problèmes. J'espère que cela a du sens. – TixxiumQ
@NatashaOliver 'HTML' s'il vous plaît –