Problème JS
Résolu/Fermé
kalimbra
Messages postés
469
Date d'inscription
samedi 22 mars 2008
Statut
Membre
Dernière intervention
7 octobre 2014
-
10 nov. 2009 à 15:53
kalimbra Messages postés 469 Date d'inscription samedi 22 mars 2008 Statut Membre Dernière intervention 7 octobre 2014 - 11 nov. 2009 à 09:02
kalimbra Messages postés 469 Date d'inscription samedi 22 mars 2008 Statut Membre Dernière intervention 7 octobre 2014 - 11 nov. 2009 à 09:02
A voir également:
- Problème JS
- Arrondi js - Forum Javascript
- Copiez l'image dans un logiciel d'édition d'images ou un outil en ligne comme js paint ou pixlr e. remplissez les cases en suivant le code couleur. des cases supplémentaires vont se remplir automatiquement. que représente le dessin ? ✓ - Forum Photoshop
- Pixlr - Forum Graphisme
- Please enable js and disable any ad blocker - Forum Mozilla Firefox
- Javascript arrondi après la virgule ✓ - Forum Windows
4 réponses
monkey_monk
Messages postés
641
Date d'inscription
mercredi 1 juillet 2009
Statut
Membre
Dernière intervention
10 août 2012
130
10 nov. 2009 à 16:37
10 nov. 2009 à 16:37
Commence déjà par mettre des { et } à tes if et else... ensuite, est-ce que ton setTimeout fonctionne ?
Parce qu'il me semblait que pour passer un paramètre à une fonction via le setTimeout (et setInterval) il fallait utiliser une function anonyme, comme cà :
Non ?
Parce qu'il me semblait que pour passer un paramètre à une fonction via le setTimeout (et setInterval) il fallait utiliser une function anonyme, comme cà :
var timer = setTimeout(function(){moveLayer(Sens);},50);
Non ?
kalimbra
Messages postés
469
Date d'inscription
samedi 22 mars 2008
Statut
Membre
Dernière intervention
7 octobre 2014
72
10 nov. 2009 à 16:44
10 nov. 2009 à 16:44
En tout cas l'erreur se produit avant le Timeout..
j'ai un "objet is null " à la ligne 10, soit au niveau du
parseInt(Objet.style.top)
voila le code original que j'ai modifié (et qui fonctionne)
j'ai un "objet is null " à la ligne 10, soit au niveau du
parseInt(Objet.style.top)
voila le code original que j'ai modifié (et qui fonctionne)
<script language="javascript"> var Timer; var Pas = 3; function moveLayer(Sens) { if(document.getElementById) Objet = document.getElementById("Contenu"); else Objet = document.all["Contenu"]; if(parseInt(Objet.style.top) + (Pas*Sens) > 0) Objet.style.top = "0px"; else Objet.style.top = (parseInt(Objet.style.top) + (Pas*Sens)) + "px"; Timer = setTimeout("moveLayer(" + Sens + ");", 50); } </script>
Meelas
Messages postés
15
Date d'inscription
lundi 19 octobre 2009
Statut
Membre
Dernière intervention
16 novembre 2009
7
10 nov. 2009 à 17:16
10 nov. 2009 à 17:16
Salut,
Dans ton premier message, à mon avis l'erreur est à cette ligne :
Timer = setTimeout("moveLayer(" + Sens + ");", 50);
Tu ne met pas le 2eme paramètre "Contenu" donc quand la fonction se déclenche de nouveau, elle ne trouve pas l'élément qui a pour id la valeur de Contenu. ;)
En la changeant en : Timer = setTimeout("moveLayer(" + Sens + "," + Contenu + ");", 50); ça doit fixer l'erreur.
Après quand tu enlève le 2nd paramètre ça marche bien. ^^
Dans ton premier message, à mon avis l'erreur est à cette ligne :
Timer = setTimeout("moveLayer(" + Sens + ");", 50);
Tu ne met pas le 2eme paramètre "Contenu" donc quand la fonction se déclenche de nouveau, elle ne trouve pas l'élément qui a pour id la valeur de Contenu. ;)
En la changeant en : Timer = setTimeout("moveLayer(" + Sens + "," + Contenu + ");", 50); ça doit fixer l'erreur.
Après quand tu enlève le 2nd paramètre ça marche bien. ^^
kalimbra
Messages postés
469
Date d'inscription
samedi 22 mars 2008
Statut
Membre
Dernière intervention
7 octobre 2014
72
11 nov. 2009 à 09:02
11 nov. 2009 à 09:02
ça marche du tonnerre.. merci beaucoup...
comme je disais, chuis une bxxx en JS ...
comme je disais, chuis une bxxx en JS ...