HTML5 canvas - drawImage pas toujours le dessin de l'image

Je suis de dessin sur la toile à chaque fois qu'un utilisateur appuie sur un bouton, mais parfois, l'image n'est pas dessiné sur la toile. Je pense que cela pourrait être que l'image n'est pas chargée dans le temps avant le contexte.drawimage fonction s'exécute, comme certains des fichiers plus petits, parfois dessinés. J'ai utilisé la console et vérifié les ressources et donc c'est le seul problème que je peux penser.

Comment puis-je éviter ce problème?

C'est mon code Javascript.

var canvas = document.getElementById("myCanvas");
var context = canvas.getContext("2d");

var questionbg = new Image();
var answerbg = new Image();

//this code is inside a function that is called each time a user presses a button
if(questiontype == "text"){
    questionbg.src = "./resources/textquestionbg.png";
    context.drawImage(questionbg, 0, 0);
    }
//if image question
else if(questiontype == "image"){
questionbg.src = "./resources/imageaudiovideoquestionbg.png";
context.drawImage(questionbg, 0, 0);
}
//if audio question
else if(questiontype == "audio"){
questionbg.src = "./resources/imageaudiovideoquestionbg.png";
context.drawImage(questionbg, 0, 0);
}
//else it is a video question
else{
questionbg.src = "./resources/imageaudiovideoquestionbg.png";
context.drawImage(questionbg, 0, 0);
}

OriginalL'auteur user2177629 | 2013-03-19