當用戶向上滾動時,我有一個菜單可以將視圖(從頂部)移動到視圖中。當用戶向下滾動時,可以動畫(屏幕外)。但是,我希望導航的背景在用戶位於頁面頂部時變爲黑色,而在距離頂部有一定距離後爲白色。當在屏幕頂部時更改菜單背景色
HTML的代碼段(工作代碼)
...
function hasScrolled() {
if($(window).width() > 768) {
var st = $(this).scrollTop();
if (Math.abs(lastScrollTop - st) <= delta)
return;
if (st > lastScrollTop && st > navbarHeight) {
// Scroll Down
$('#s-nav').removeClass('nav-down').addClass('nav-up');
} else {
// Scroll Up
if (st + $(window).height() < $(document).height()) {
$('#s-nav').removeClass('nav-up').addClass('nav-down');
}
}
} else {
$('#s-nav').removeClass('nav-up').addClass('nav-down');
}
HTML
<nav id="s-nav" class="row nav-down">
... nav menu ...
</nav>
CSS
#s-nav {
position: fixed;
z-index: 999;
background-color: #fff;
top: 0; left: 0;
width: 100%;
transition: top 0.5s ease;
}
#s-nav.nav-up { top: -75px; }
你能提供工作'snippet'或'fiddle'? –
大部分內容是通過wordpress創建的。當我嘗試 – user3550879
時,Snippet無法識別代碼,因爲您在滾動時切換類,那麼您也可以使用這些類來切換'bg-color'。 –