javascript 动画顶部栏 - 在滚动上显示和隐藏 Posted 2021-05-04
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript 动画顶部栏 - 在滚动上显示和隐藏相关的知识,希望对你有一定的参考价值。
header{
-webkit-transition: top 0.2s ease-out;
-moz-transition: top 0.2s ease-out;
-ms-transition: top 0.2s ease-out;
-o-transition: top 0.2s ease-out;
transition: top 0.2s ease-out;
}
// 65 -> topbar height
// 1000 -> transition time
var screen_size;
var lastScrollTop = 0;
var header_showing = false;
var scrolling = false;
var first_load = true;
var mobile_menu_expanded = false;
$('.toggle-topbar.menu-icon').on('click', function(){
if(mobile_menu_expanded == false){
mobile_menu_expanded = true;
}else{
mobile_menu_expanded = false;
}
});
$('ul.right a').on('click', function(){
if(mobile_menu_expanded == false){
mobile_menu_expanded = true;
}else{
mobile_menu_expanded = false;
}
});
$(window).scroll(function(event){
scrolling = true;
var st = $(this).scrollTop();
if(st > lastScrollTop && st > 65){
if(screen_size == 'small'){
if(mobile_menu_expanded == false){
if(header_showing !== false || first_load == true){
if(first_load == true){first_load = false;}
header_showing = false;
$('header').css({'top':-65});
}
}
}else{
if(header_showing !== false || first_load == true){
if(first_load == true){first_load = false;}
header_showing = false;
$('header').css({'top':-65});
}
}
}else{
if(header_showing !== true){
header_showing = true;
$('header').css({'top':0});
}
}
lastScrollTop = st;
clearTimeout($.data(this, 'scrollTimer'));
$.data(this, 'scrollTimer', setTimeout(function() {
if(header_showing !== false || first_load == true){
if(st > 65){
if(mobile_menu_expanded == false){
if(first_load == true){first_load = false;}
header_showing = false;
$('header').css({'top':-65});
}
}
}
}, 1000));
});
以上是关于javascript 动画顶部栏 - 在滚动上显示和隐藏的主要内容,如果未能解决你的问题,请参考以下文章
Bootstrap 3 固定顶部导航栏显示水平滚动
滚动动画会破坏页面上的链接
如何在 UINavigationBar 上添加 UISearchBar 动画
在手机上,检测用户何时滚动“过去”屏幕顶部
html Philip Benton编写的CodePen。向上滚动导航栏显示 - 导航栏固定在浏览器顶部,隐藏在滚动下方
添加滚动视图时,所有视图都显示在导航栏后面的self.view顶部