J'ai le problème suivant avec une minuterie dans mon application Rails qui utilise jQuery et Turbolinks: j'ai un setTimeout
minuterie en cours d'exécution sur ma page de démarrage pour une diapositive d'image. Lorsque je clique sur un lien, la page change, mais le minuteur continue de rouler, ce qui, à mon avis, est causé par Turbolinks. De plus, lorsque je rentre de nouveau dans la page de démarrage, le chronomètre se déclenche à nouveau et s'empile sur l'ancien.
J'ai joué avec clearTimeout
(par exemple, en essayant de le placer à différents endroits), mais je ne peux pas le faire fonctionner. J'aimerais pouvoir voir s'il y a setTimeout
en cours d'exécution et puis arrêtez-le avant de commencer un nouveau, ou quelque chose comme ça ...
Voici le chronomètre que j'ai sur ma page de démarrage:
var timerSplash = setTimeout(splash, 5000);
Je suis vraiment dans une impasse maintenant et j'ai besoin d'aide!
Réponses:
5 pour la réponse № 1Tu peux essayer ça
if (window.timerSplash)
clearTimeout(window.timerSplash);
window.timerSplash = setTimeout(splash, 5000);