Accueil > Forum > > > > Code javascript ne fonctionne pas sur firefox
Code javascript ne fonctionne pas sur firefox
samedi 5 juin 2010 à 19:05:52 |
Code javascript ne fonctionne pas sur firefox

ezzza
|
Bonjour,
Je suis débutante en javascript et je dois réaliser un pong en javascript.
J'y suis arrivée grâce à un tuto et après de nombreuses difficultées mais en voici une de plus que je n'arrive pas à résoudre. Mon code fonctionne sur tout les navigateurs sauf sur firefox.
Donc voici mon code:
Code Javascript : //variables
var GAME_BAR_WIDTH = 80;
var GAME_BAR_HEIGHT = 10;
var PXL_DEPLA = 20;
var ZONE_GAME_WIDTH = 800;
var ZONE_GAME_HEIGHT = 500;
var COLOR_BALL = "#fff";
var SIZE_BALL = 8;
var SPEED_BALL = 2;
var barX; // X position of the bar change with keypad
var barY; // Y position of the bar don't change
var context;
var ballX ;
var ballY = 150;
var dirBallX = 0;
var dirBallY = 1;
var loop = setInterval(refreshGame);
window.addEventListener('load', function () {
// Get canvas object
var elem = document.getElementById('canvasElem');
if (!elem || !elem.getContext) {
return;
}
// Get context 2D
context = elem.getContext('2d');
if (!context) {
return;
}
//Initialisation of variables
ZONE_GAME_WIDTH = elem.width;
ZONE_GAME_HEIGHT = elem.height;
ballX = Math.random()*ZONE_GAME_WIDTH;
barX = (ZONE_GAME_WIDTH/2)-(GAME_BAR_WIDTH/2);
barY = (ZONE_GAME_HEIGHT-GAME_BAR_HEIGHT);
//Initialisation of game
createContext(context);
// Events
window.document.onkeydown = checkDepla;
}, false);
function refreshGame() {
// Clear zone
clearContext(context, 0, ZONE_GAME_WIDTH, 0, ZONE_GAME_HEIGHT);
// Get all again
// Get the bar again
context.fillStyle = "#fff";
context.fillRect(barX,barY,GAME_BAR_WIDTH,GAME_BAR_HEIGHT);
// New position of the ball
if ( (ballX + dirBallX * SPEED_BALL) > ZONE_GAME_WIDTH) dirBallX = -1;
else if ( (ballX + dirBallX * SPEED_BALL) < 0) dirBallX = 1;
if ( (ballY + dirBallY * SPEED_BALL) > ZONE_GAME_HEIGHT) {ballY = 0;
//position on X
ballX = (Math.random()*ZONE_GAME_WIDTH);}
else {
if ( (ballY + dirBallY * SPEED_BALL) < 0) dirBallY = 1;
else {
if ( ((ballY + dirBallY * SPEED_BALL) > (ZONE_GAME_HEIGHT - GAME_BAR_HEIGHT)) && ((ballX + dirBallX * SPEED_BALL) >= barX) && ((ballX + dirBallX * SPEED_BALL) <= (barX+GAME_BAR_WIDTH))) {
dirBallY = -1;
dirBallX = 2*(ballX-(barX+GAME_BAR_WIDTH/2))/GAME_BAR_WIDTH;
}
}
}
ballX += dirBallX * SPEED_BALL;
ballY += dirBallY * SPEED_BALL;
// Get the ball
context.fillStyle = COLOR_BALL;
context.beginPath();
context.arc(ballX, ballY, SIZE_BALL, 0, Math.PI*2, true);
context.closePath();
context.fill();
}
function checkDepla(e) {
// Right Key
if (e.keyCode == 39) {
if ( (barX+PXL_DEPLA+GAME_BAR_WIDTH) <= ZONE_GAME_WIDTH ) barX += PXL_DEPLA;
}
// Left Key
else if (e.keyCode == 37) {
if ( ((barX-PXL_DEPLA)) >= 0 ) barX -= PXL_DEPLA;
}
}
function clearContext(context, startwidth, contextwidth, startheight, contextheight) {
context.clearRect(startwidth, startheight, contextwidth, contextheight);
}
// Get context
function createContext(context) {}
Merci de m'aider à résoudre ce problème ça devient limite urgent.
|
|
dimanche 6 juin 2010 à 03:48:36 |
Re : Code javascript ne fonctionne pas sur firefox

jdmcreator
|
Que retourne la console d'erreur de Firefox ? (Barre " Outils")
JDMCreator
--------
Participez au nouveau projet : la wiki sur le javascript !
fr.jsinfo.wikia.com
|
|
dimanche 6 juin 2010 à 14:17:46 |
Re : Code javascript ne fonctionne pas sur firefox

ezzza
|
La console d'erreur dit "context is undefine"
Je comprends vraiment pas ce qui cloche. Surtout que ça fonctionne sur chrome et safari. Et ça fonctionnait sur IE mais plus maintenant et je sais denouveau pas pourquoi.
Merci de m'aider
|
|
lundi 7 juin 2010 à 01:00:00 |
Re : Code javascript ne fonctionne pas sur firefox

jdmcreator
|
Je ne sais pas trop quoi te dire, ton code semble correct et je n'ai jamais utilisé de CANVAS.
Quelqu'un d'autre peut-être ?
JDMCreator
--------
Participez au nouveau projet : la wiki sur le javascript !
fr.jsinfo.wikia.com
|
|
lundi 7 juin 2010 à 18:47:27 |
Re : Code javascript ne fonctionne pas sur firefox

PetoleTeam
|
Bonjour,
- je présumes que tu as bien une balise canvas avec la bonne id
- ensuite je trouve un peu hasardeux de mettre en début de ton code
var loop = setInterval(refreshGame); et ce sans paramètre de délai, la fonction sera appeler avant même que ton context n'ai eu le temps d'être crée.
- si tu dois la mettre quelque part mets la dans la fonction que tu réalises sur le onload...
Enfin...
...Et ça fonctionnait sur IE mais plus maintenant...
IExplorer ne reconnaît pas window.addEventListener, alors normal!
;O)
|
|
lundi 7 juin 2010 à 21:43:48 |
Re : Code javascript ne fonctionne pas sur firefox

ezzza
|
Merci ça fonctionne enfin manquait juste un paramètre de délai.
Merci beaucoup.
Mais alors à la place de window.addEventListener je dois mettre quoi.
Enfin encore merci
|
|
mardi 8 juin 2010 à 02:17:05 |
Re : Code javascript ne fonctionne pas sur firefox
|
mardi 8 juin 2010 à 22:46:56 |
Re : Code javascript ne fonctionne pas sur firefox

ezzza
|
Je vais surement poser une question stupide mais comment on met les deux ensemble pour que ça fonctionne sur IE et sur firefox.
Encore merci de me répondre
|
|
samedi 12 juin 2010 à 17:45:07 |
Re : Code javascript ne fonctionne pas sur firefox

PetoleTeam
|
Bonjour,
Code Javascript : if( window.addEventListener)
window.addEventListener( "load", nom_fonction, false);
else
window.attachEvent( "onload", nom_fonction);
}
;O)
|
|
Cette discussion est classée dans : var, zone, context, width, game
Répondre à ce message
Sujets en rapport avec ce message
Besoin d'aide pour jeu de cartes [ par earth4x ]
J'ai un problème avec mon petit projet de jeu de cartesfunction pigerCartes(){ var zone = document.getElementById("divCartes"); var nbCartes =
Probleme DHTML Window widget [ par destiny ]
Bonjour,Le code : //Affiche le live TV function LiveTV(height, width) { if (livetvwin) { livetvwin.close(); } var widthSup = 0;<br /
Firefox & mon_image.height ou mon_image.width [ par kcin ]
Bonjour tout le mondeDans le développement d'une mini galerie de photos, j'ai une fonction JS qui récupère la hauteur et la largeur de l'image physiqu
deux menus deroulant +deux zones de texte [ par jabousan ]
Bonjour à tous, J'espère que je suis dans le bon post ...??? Hé oui, encore de l'aide sur un menu déroulant avec texte .... Voila, j'ai réussit à fa
Insérer l'heure dans une zone texte via l'évènement onclick [ par ecolom ]
Bonjour à tous, je cherche en vains une fonction qui me permet d'insérer l'heure via un onclick dans une zone input. En effet, j'ai un formulaire ave
damier intéractif et fonction random en javascript avec recherche d'url en php? [ par baudryolivier ]
BonjourVoulant créer un damier intéractif j'utilise en javascript ceci :// global variable holding the machine windowvar program_window;function openS
WebApp Ipad Html5, Canvas Javascript [ par ezzza ]
Bonjour à tous, Je désire réalisé une WebApp pour iPad de coloriage, jusque la tout va bien. Sous Chrome l'application fonctionne bien, le problème
jquery liscroller aide ! [ par phoenixgreg ]
Hi tt le monde ! Voilà j'ai mon petit script jquery liscroller, il fonctionne très bien, le texte défile mais j'aimerais qu'il défile à la vertical (
déclaration de variable [ par rhan_659 ]
bonjour je contrôle mon js avec jslint et il me demande de déclarer mes variables en une ligne : var a, b , c; au lieux de le faire en plusieurs v
Solution : calcul CRC JBus/Modbus en JScript [ par edurand1 ]
[code=js]function(msg : String){ var chars = msg.ToCharArray(); var lCrc : long = 0xFFFF; var Polynome : int = 0xA001; // Polynôme = 2^15 + 2^13 +
Livres en rapport
|
Derniers Blogs
JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc
Forum
UTILISER UN .JSUTILISER UN .JS par zaikoe
Cliquez pour lire la suite par zaikoe
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|