javascript 动画顶部栏 - 在滚动上显示和隐藏

Posted

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顶部