Cet article explore l'utilisation de setTimeout()
et clearTimeout()
dans JavaScript, en particulier dans le contexte des animations et jQuery. Il met en évidence l'importance de stocker les ID de délai d'attente dans les variables pour permettre l'annulation.
L'article démontre qu'une simple boucle de boucle multiple setTimeout()
appellera le même ID de délai de délai à plusieurs reprises, ce qui rend impossible de les effacer sélectivement. Cependant, l'utilisation de setInterval()
pour contrôler le timing permet des ID de délai d'attente uniques, comme le montre l'exemple:
Cela illustre que la nettoyage de tous les appels setTimeout()
nécessite d'itréter une gamme d'ID potentiels, ce qui n'est pas idéal pour l'annulation sélective. L'exemple de code tente d'effacer tous les temps morts à l'aide d'une boucle:
for(i=0; i < 10; i++) { window.clearTimeout(i); }
L'article plonge ensuite dans un scénario impliquant JQuery, où l'objectif est de gérer et potentiellement d'arrêter les animations en utilisant setTimeout()
. Une approche plus robuste utilisant un tableau pour stocker des identifiants de délai d'attente est suggérée pour un meilleur contrôle sur plusieurs délais d'attente:
L'article se termine par une section FAQ concernant les questions courantes sur clearTimeout()
dans jQuery, y compris son objectif, son utilisation, ses limites (par exemple, l'incapacité à arrêter les fonctions déjà en cours d'exécution) et la comparaison avec clearInterval()
. La FAQ précise que bien qu'il n'y ait pas de fonction jQuery unique pour effacer tous les délais d'attente, les gérer efficacement implique de stocker des ID dans un tableau et d'itérer pour les effacer individuellement. La compatibilité entre les navigateurs et l'applicabilité Node.js de clearTimeout()
sont également confirmées.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!