隱藏/顯示導航欄,當用戶滾動向上/向下如何隱藏/顯示導航欄,當用戶滾動向上/向下
這裏是我想要實現的例子: http://haraldurthorleifsson.com/ 或 http://www.teehanlax.com/story/readability/
當您向上滾動時向下滾動屏幕並向下滑動時,導航欄在屏幕上向上滑動。我已經想通過淡入/淡出來做到這一點,但我想用與例子中完全相同的動畫來實現它。 注:我已經嘗試過的slideIn()和像它的拉伸動畫的方式......
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>
我有同樣的問題,也許我的問題可以幫助你。 [固定報頭的JQuery] [1] [1]:http://stackoverflow.com/questions/17532872/css-fixed-header-in-jquery-horizontal-align – Darkness
我已經寫了一個小部件這解決了這個確切的問題。完全可自定義,從顯示/隱藏之前的容差(例如,必須已滾動> 5px)到觸發前的偏移量(例如,必須從頂部大於200px)。你可能想看看http://wicky.nillia.ms/headroom.js/ – WickyNilliams