Je lance un : q=setTimeout(fonction,1000) par une fonction appelee par un lien.
si je click 2 fois sur le lien, le timer est demarre deux fois.
Je veux donc : si il est deja en route le stopper.
Ne me repondez pas
if (q) {
blablabla
}
cela produit une erreur si le timer n'est pas lance (la premiere fois), et bloque la suite de la fonction, donc il ne se lance jamais
bonjour,
>>Ne me repondez pas
>>if (q) {blablabla}
>>cela produit une erreur
c'est parce que "q" n'est pas défini en global,
du style var q=false; en dehors de toute fonction.
mais cela ne résoudrait effectivement pas
le problème si la fonction se rappelle elle-même.
pistes, car on ne sait pas tout ...
° invalider le lien lorsque la fonction
a été appelée
° une variable globale qui signale
que le timeout est en cours ou pas
que l'on teste avant d'exécuter la
fonction.
° ... il doit bien y avoir d'autres solutions,
si ça ne convient pas ...
Cordialement Bul. [Site] [[mailto:marcel.Bultez@Tiscali.fr Mail]]
J'ai oublie de dire que la fonction lancee par le setTimeout posede un setTimeout qui rappel cette meme fonction de facon a ce que la fonction s'execute toute le secondes elle meme.