Ce snippet met en place un menu sticky fixé en haut de l’écran qui se masque automatiquement lors du scroll vers le bas et réapparaît dès que l’utilisateur scrolle vers le haut.
Le comportement repose sur :
- une détection de direction de scroll (comparaison de la position actuelle et précédente),
- un seuil de déclenchement pour éviter que le menu ne se cache trop tôt,
- un filtrage des micro-mouvements (trackpad / inertie),
- un reset forcé en haut de page pour garantir la visibilité après refresh ou retour en haut.
- L’animation utilise transform et opacity pour des performances optimales (GPU), et le traitement du scroll est optimisé via requestAnimationFrame et un listener passive.
Résultat :
un menu fluide, stable, non intrusif, parfaitement adapté aux interfaces modernes et aux sites à fort focus UX en ajoutant la classe menu-sticky au container ou se trouve le menu