11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour aprés avoir parcouru les différents sujet [Résolu] sur le sujet setTimeOut, je me permet de venir quand même poser ma petite question.

Assez simple dans une page sur un "onMouseOver" je lance une fonction qui doit décaler un div (lui même imbriquer dans un autre div).

Voici ma fonction appelée (c'est une fonction de test) :


function test()
{
  if(parseInt(document.getElementById("contenu").style.left)<50)
  {
    document.getElementById("contenu").style.left = parseInt(document.getElementById("contenu").style.left) + 5 +"px";
    setTimeOut(test(),50);
  }
  else
  {
    alert("PASOK");
  }
}


Vous l'aurez compris je souhaite le décaler de 50 pixels petit à petit.

Un fois arrivée à 50 il s'arrete, ici c'est représenté par l'affichage de "PASOK".

Alors le problème c'est qu'il ne se passe rien est que dans FireFox je récupère l'erreur suivante :
a écrit :
setTimeOut is not defined
.

Je subbodore que c'est une broutille, mais je débute dans le javascript et là vraiment je ne sais quoi faire.

Merci pour vos précieuses réponses, en espérant avoir bien respecté les règles du Forum ^^.

PS : j'ai vu que peut etre il serait plus judicieux d'utiliser setInterval, mais le problème se pose aussi : comment l'arreter?
Modifié par Shinji (15 Feb 2007 - 09:21)
Salut,

Il faut écrire "setTimeout" (la casse est importante en JavaScript). De plus, le premier paramètre doit être ta fonction et non l'appel à ta fonction :
setTimeout(test, 50);
Shinji a écrit :
Oh vraiment j'ai honte.

Merci Beaucoup pour la réponse je ferais plus attention dorénavant ^^.
Pas de problème, à bientôt sur le forum. Smiley smile