J'essaye de créer un programme de base du pendu. C'est un tableau d'étiquettes qui sont assignées dans un tableau d'objets (appelés boutons). Chaque image est une image d'une lettre, donc par exemple vous devez appuyer sur le bouton 'L', il vérifiera si c'était dans un tableau de mots (qui est un tableau de caractères), alors il agirait en conséquence (pour cacher la lettre, puis mettez à jour l'image de la potence si nécessaire).Accéder à des fonctions à partir d'un objet Javascript (Javascript)
Je n'arrive pas à obtenir la méthode onclick des images pour accéder à la fonction checkinarray. Qu'est-ce que je fais mal?
var LetterAmount = 3; //make this 26. checked.
var WordArray = new Array();
var Buttons = new Array();
function checkinarray(num){
var z = 0;
while (z<4){
document.write("looping through word now");
if (num == WordArray[z]){
document.write("<br/>it is in the word");
}
z++;
}
}
function ButtonClicked(){
this.Image.src = "images/blank.jpg";
checkinarray(this.Number);
}
function Button(Image, Number) {
this.Image = Image;
this.Number = Number;
this.ButtonClicked = ButtonClicked;
}
function initialiseletters(){
var x;
//set up empty img tags for use
for(i = 0; i < LetterAmount; i++) {
document.write("<img id=" + i + ">");
}
for(x = 0; x < LetterAmount; x++) {
document.images[x].src = "images/" + x + ".jpg";
document.getElementById(x).onclick =function(){
Buttons[this.id].ButtonClicked();
}
Buttons[x] = new Button(document.images[x], "" + x);
}
}
function initialiseword(){
//WordArray = new Array();
WordArray[0] = 0;
WordArray[1] = 1;
WordArray[2] = 2;
WordArray[3] = 3;
}
function initialise(){
initialiseword();
initialiseletters();
document.write("testing overall");
}
merci pour la réponse rapide! C'est pour un cours et ils ont précisé que nous ne pouvions pas utiliser une boîte à outils ou des extensions, cependant. – David2334
Ensuite, vous êtes bloqué avec les méthodes DOM "raw" - 'Document # createElement',' Node # appendChild', etc., plus la propriété 'Element # innerHTML' utile (très largement supportée) et non standard (car, encore une fois, vous ne pouvez pas utiliser 'document.write' après le rendu de la page). Voir les spécifications du w3c; w3schools (http://www.w3schools.com/) contient des références et des tutoriels utiles. –