Bibliothèque Javascript pour faire le défilement automatique d'un div fixé à gauche de la page

StackOverflow https://stackoverflow.com/questions/3245423

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.

Était-ce utile?

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
scroll top