So blenden Sie die Navigationsleiste ein / aus, wenn der Benutzer einen Bildlauf nach oben oder unten durchführt
Navigationsleiste ausblenden / einblenden, wenn der Benutzer einen Bildlauf nach oben / unten durchführt
Hier ist das Beispiel, das ich erreichen möchte: http://haraldurthorleifsson.com/ oderhttp://www.teehanlax.com/story/readability/
Die Navigationsleiste wird beim Scrollen nach unten vom Bildschirm nach oben und beim Scrollen nach oben wieder nach unten verschoben. Ich habe herausgefunden, wie es mit Einblenden / Ausblenden gemacht wird, aber ich möchte es mit genau der gleichen Animation wie im Beispiel erreichen.Hinweis: Ich habe SlideIn () bereits ausprobiert und mag die Art und Weise, wie es die Stretching-Animation ausführt ...
JQUERY:
var previousScroll = 0,
headerOrgOffset = $('#header').offset().top;
$('#header-wrap').height($('#header').height());
$(window).scroll(function() {
var currentScroll = $(this).scrollTop();
console.log(currentScroll + " and " + previousScroll + " and " + headerOrgOffset);
if(currentScroll > headerOrgOffset) {
if (currentScroll > previousScroll) {
$('#header').fadeOut();
} else {
$('#header').fadeIn();
$('#header').addClass('fixed');
}
} else {
$('#header').removeClass('fixed');
}
previousScroll = currentScroll;
});
CSS:
#header {
width: 100%;
z-index: 100;
}
.fixed {
position: fixed;
top: 0;
}
#header-wrap {
position: relative;
}
HTML:
<div id="header-wrap">
<div id="header" class="clear">
<nav>
<h1>Prototype</h1>
</nav>
</div>
</div>