Accueil    Javascript    Fonction setTimeout
 



Javascript : Fonction setTimeout  Javascript : Fonction setTimeout

Index Javascript


Les fonctions setTimeout() et setInterval() permettent d'effectuer des appels vers une fonction ou un bloc de code javascript après un délai spécifique paramétrable exprimé en millisecondes.


var MonTimeout = setTimeout("Fonction / Expression", Delai );

window.clearTimeout(MonTimeout);

Ces deux méthodes sont légèrement différentes :
- La méthode setInterval une fois déclarée appelle en boucle la fonction après chaque intervalle de temps(adapté à des fonctions d'affichage des heures par exemples).
- La méthode setTimeout appelle la fonction une seule fois après l'intervalle de temps écoulé. Pour effectuer un appel en boucle, il est nécessaire de rappeler la fonction setTimeout à la fin de la fonction qui est appelée.

D'autre part lorsque plusieurs fonctions setTimeout() ou setInterval() sont appelées, l'appel à la fonction clearTimeout() ou clearInterval() provoquera l'arrêt du dernier timeout ou interval déclaré (même si la référence est différente).


Ecriture dans un élément div par la fonction appelée par setTimeout (avec un arrêt du timeout après 10 passages) :

<div id="divEcriture" style="border:solid 1px black;"> </div>

<script type="text/javascript">
//<![CDATA[

var compteur = 0;
function EcritureLigne(){
   compteur += 1;
   document.getElementById('divEcriture').innerHTML += "Ligne - " + compteur;
   // Rappel de la fonction en boucle
   exempleTimeout = setTimeout("EcritureLigne()", 2000);
   if(compteur >= 10){
      window.clearTimeout(exempleTimeout);
   }
}
// Premier appel à la fonction EcritureLigne après 2 secondes
var exempleTimeout = setTimeout("EcritureLigne()", 2000);

//]]>
</script>


Rendu de l'exemple :