j'ai même mis le setTimeout dans une variable et je l'ai passé au clearTimeout, sans resultat....
Bonjour,
Voila je rencontre un petit problème avec mon code.
Ce que je fais
Décrivez ici votre code ou ce que vous cherchez à faire
Ce que je veux
je cherche comment faire un clear pour settimout car j'ai testé toute sorte de code mais sans aucun resultat, mon timer ne se réinitialise pas avec le ClearTimeout.
le code affiche une tooltip et la faire disparaitre dans 5s.
Le but c'est de réinitialiser un mon setTimeout quand le scroll dépasse mon element (ADD-LIST)
Ce que j'obtiens
Décrivez ici vos erreurs ou ce que vous obtenez à la place de ce que vous attendez :(
12 réponses
Bonjour,
setTImout retourne un unique id. C'est cet id que tu dois donner à clearTimeout. https://developer.mozilla.org/ro/docs/Web/API/window.setTimeout
je l'ai mis dans le code mais ça marche pas :
clearTimeout(setTimeout(function(){$('[data-toggle="tooltip"]').tooltip('hide'); }, 5000));
Vas tu dans ton else déjà ?
pk faire un clearTimeout ????????
le setTimeOut n'appel q'une seule fois la fonction
@pluche
Pierre
parce que quand le scroll dépasse mon element et il revient vers lui et bien il doit compter depuis 0 les 5s, ce qui n'est pas le cas, car il compte parfois 2s, 3s..
j'espère être claire
merci
pk tu veut faire un clearTimeOut ??
Pierre
@Pierre je t'ai répondu :
parce que quand le scroll dépasse mon element et il revient vers lui et bien il doit compter depuis 0 les 5s, ce qui n'est pas le cas, car il compte parfois 2s, 3s et il fait disparaitre l'element (il faut toujours qu'il le cache dans 5s)
j'espère être claire
merci
"j'ai même mis le setTimeout dans une variable et je l'ai passé au clearTimeout, sans resultat...."
Tu l'avais déclaré à quel niveau ta variable ?
Je n'ai pas tout compris aux explications, mais qu'est ce que ça donne si tu fais ça :
rien, même resultat quand je depasse mon element au scroll, et je reviens vers lui, normalement la tooltip doit apparaitre et disparaitre dans 5s, mais là elle apparait et diparait trop vite (1s ou 2s)
Pour éliminer le fait que "tooltip" ne ferait pas ce qu'il est sensé faire, as-tu tester de bien mettre des "console.log" aux endroits stratégiques afin de savoir si ton code à toi est correcte et s'éxecute bien au moment où il est sensé s'éxecuter ?
Sinon, fais-nous un jsfiddle d'exemple, ça ira plus vite ainsi pour t'aider.
Edit, il serait intéressant, par soucis d'optimisation, de mettre "$('[data-toggle="tooltip"]')" dans une variable, histoire de ne pas faire la recherche de l'élément à chaque fois.
oui j'ai bien mis des console.log, enfait j'ai fait plusieurs tests, plusieurs essais ...