Sticky nav ne défilera pas sur les pages courtes

Je développe un site pour un fleuriste et je le teste et le perfectionne. Un problème de longue date concerne la barre de navigation, qui est supposée restr en haut de la page lorsque l’utilisateur la fait défiler. Cela fonctionne très bien sur les pages plus longues, mais sur les pages courtes où la résolution de l’écran est faible et où la navigation “se répand” au-delà de la fin du défilement de la page ne fonctionne pas – lorsque la barre de navigation utilise jQuery et position: le haut une fois que l’utilisateur fait défiler. (Pour un exemple, voir http://efbeta.nzrailphotos.co.nz/products/teddies/ ). Comment puis-je résoudre ce problème afin que soit:

  • la barre de navigation ne résout pas le problème lorsque le contenu de la page est plus court que la barre de navigation
  • la barre de navigation défile sur de courtes pages
function sticky_relocate() { var window_top = $(window).scrollTop(); var div_top = $('#sticky-anchor').offset().top; if (window_top > div_top) $('nav').addClass('stick') else $('nav').removeClass('stick'); } $(function() { $(window).scroll(sticky_relocate); sticky_relocate(); }); 

Je pense que le plugin Jquery appelé StickyJS peut vous aider: http://stickyjs.com

La hauteur minimale de votre page doit être au moins égale à celle de la barre de navigation entièrement développée. Essayez de définir le style #container sur une hauteur minimale.