Désactivation temporaire du défilement pendant l'animation jQuery scrollTo
Lors de l'utilisation du plugin scrollTo de jQuery, le défilement peut perturber la fluidité de l'animation. Bien que vous puissiez simplement masquer la barre de défilement, une meilleure solution consiste à désactiver temporairement le défilement sans affecter sa visibilité.
Solution
Au lieu de cibler uniquement l'événement de défilement, la clé est d'annuler également les événements d'interaction associés tels que les défilements de la souris, du toucher et des boutons. Voici un script que vous pouvez utiliser :
// Disable scrolling function disableScroll() { window.addEventListener('DOMMouseScroll', preventDefault, false); // older FF window.addEventListener(wheelEvent, preventDefault, wheelOpt); // modern desktop window.addEventListener('touchmove', preventDefault, wheelOpt); // mobile window.addEventListener('keydown', preventDefaultForScrollKeys, false); } // Enable scrolling function enableScroll() { window.removeEventListener('DOMMouseScroll', preventDefault, false); window.removeEventListener(wheelEvent, preventDefault, wheelOpt); window.removeEventListener('touchmove', preventDefault, wheelOpt); window.removeEventListener('keydown', preventDefaultForScrollKeys, false); }
Maintenant, vous pouvez désactiver le défilement en appelant DisableScroll() et le réactiver lorsque vous le souhaitez avec EnableScroll().
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!