Javascript erreur
Zed-X
Messages postés
24
Statut
Membre
-
Utilisateur anonyme -
Utilisateur anonyme -
bonjours,
Je voudrais que lorsque mon canvas se dessine aux nouvelle coordonnées après avoir appuyé sur la touche, il s'efface aux précédentes coordonnées (pour donner l'impression de déplacer mon image avec les touches)
j'ai donc utilisé une fonction clearrect pour cela mais lorsque je lance le jeu, j'ai
une erreur:
TypeError: Not enough arguments to CanvasRenderingContext2D.clearRect.
Merci d'avance pour votre aide
voici mon code :
Je voudrais que lorsque mon canvas se dessine aux nouvelle coordonnées après avoir appuyé sur la touche, il s'efface aux précédentes coordonnées (pour donner l'impression de déplacer mon image avec les touches)
j'ai donc utilisé une fonction clearrect pour cela mais lorsque je lance le jeu, j'ai
une erreur:
TypeError: Not enough arguments to CanvasRenderingContext2D.clearRect.
Merci d'avance pour votre aide
voici mon code :
function montreJeu(){
document.getElementById('pglobal').className="cache";
document.getElementById('jglobal').className="montre";
}
var monCanvas = document.getElementById('dessin');
var ctx = monCanvas.getContext('2d');
ctx.clearRect(100,100, monCanvas.width, monCanvas.height);
tabl=[['ninja.png', 0, 400]]; // source, x, y
var ninja = new Image();
ninja.src = tabl[0][0]
ninja.onload = function(){
ctx.drawImage(ninja,tabl[0][1],tabl[0][2]);
};
window.setInterval(function () {bouclejeu()}, 100);
function bouclejeu(){
//efface clearrect
ctx.clearRect(tabl[0][2]);
ctx.drawImage(ninja,tabl[0][1],tabl[0][2]);
console.log(tabl[0][2]);
}
document.addEventListener('keypress',function(depl)
{
if (depl.keyCode === 38) //fleche du haut
{
console.log('ninja.png');
tabl[0][2] = tabl[0][2]-10;
}
else if (depl.keyCode === 40)
{
console.log('ninja2.png');
tabl[0][2] = tabl[0][2]+10;
}
}, false);
A voir également:
- Javascript erreur
- Telecharger javascript - Télécharger - Langages
- Erreur 4101 france tv - Forum Lecteurs et supports vidéo
- Erreur 0x80070643 - Accueil - Windows
- Erreur 0x80070643 Windows 10 : comment résoudre le problème de la mise à jour KB5001716 - Accueil - Windows
- Javascript arrondi ✓ - Forum Javascript
1 réponse
Je présume que c'est cette ligne là où tu as l'erreur:
ctx.clearRect(tabl[0][2]);
C'est normal car tu as pas mis tout les paramètres, il lui fait deux points, et pour savoir où se trouve un point il faut 2 coordonées (X et Y)
Du coup clearRect s'écrit de cette façon:
ctx.clearRect(x1,y1,x2,y2);
Si tu veux tout effacer tu peux toujours faire ceci
ctx.clearRect(0, 0, monCanvas.width, monCanvas.height);
ctx.clearRect(tabl[0][2]);
C'est normal car tu as pas mis tout les paramètres, il lui fait deux points, et pour savoir où se trouve un point il faut 2 coordonées (X et Y)
Du coup clearRect s'écrit de cette façon:
ctx.clearRect(x1,y1,x2,y2);
Si tu veux tout effacer tu peux toujours faire ceci
ctx.clearRect(0, 0, monCanvas.width, monCanvas.height);