Bibliothèque Javascript pour faire le défilement automatique d'un div fixé à gauche de la page
-
15-09-2020 - |
Question
Je veux une bibliothèque JS qui puisse me permettre de créer un menu attrayant et toujours visible par l'utilisateur sur le côté gauche de l'écran, env.au milieu.
La solution
Puisque vous avez demandé une bibliothèque, la voici jQuery.Il utilise CSS position: fixed
s'il est disponible, et se dégrade gracieusement à la manière javascript si nécessaire.
[Voyez-le en action]
CSS
#menu {
position: absolute;
left: 0;
top: 50%;
/* ... */
}
Javascript
(function() {
var $menu = $("#menu");
var $window = $(window);
var menuHalfHeight = $menu.outerHeight() / 2;
var updateMenu = function() {
$menu.css({
"margin-top": - menuHalfHeight + $window.scrollTop()
});
};
var supportFixed = (function() {
$menu.css({ position: "fixed" });
updateMenu();
return $menu.offset().top > 0; // ~150
})();
if (!supportFixed) {
$menu.css({ position: "absolute" });
$window.scroll(updateMenu);
}
})();
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow