JQuery : capture de l'événement de redimensionnement une fois terminé
L'événement de redimensionnement jQuery peut être déclenché en continu pendant le redimensionnement de la fenêtre, entraînant des problèmes de performances. Pour résoudre ce problème, nous visons à invoquer une fonction uniquement une fois le redimensionnement terminé.
Solution utilisant la manipulation d'intervalle :
Comme suggéré par thejh, nous pouvons exploiter la fonction setInterval pour vérifier périodiquement si le navigateur a fini de redimensionner. Une fois qu'il détecte l'inactivité, il peut effacer l'intervalle et appeler la fonction souhaitée :
var resizeTimer; $(window).resize(function() { // Reset the resize timer if it exists if (resizeTimer) clearTimeout(resizeTimer); // Set a new resize timer resizeTimer = setTimeout(function() { // Call the desired function here }, 30); });
Dans cette solution, nous utilisons clearTimeout pour annuler toute minuterie de redimensionnement existante. Nous réglons ensuite une nouvelle minuterie avec un intervalle court (30 millisecondes dans cet exemple). Une fois le temps écoulé, nous savons que le redimensionnement a cessé et nous pouvons exécuter la fonction souhaitée.
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!