Smooth Auto-Hide Header Navigation with jQuery and CSS3
| File Size: | 2.95 KB |
|---|---|
| Views Total: | 19622 |
| Last Update: | |
| Publish Date: | |
| Official Website: | Go to website |
| License: | MIT |
A jQuery/CSS solution to create a fixed header navigation that auto hides when you scroll down, however when you scroll up it would show itself again. With a smooth sliding effect using CSS3 transitions.
How to use it:
1. Create a header navigation for your website.
<header class="page-header"> ... </header>
2. The CSS to make it sticky at the top of the web page.
.page-header {
position: fixed;
left: 0;
top: 0;
width: 100%;
box-sizing: border-box;
-webkit-transition: top 0.6s;
-moz-transition: top 0.6s;
transition: top 0.6s;
}
3. The CSS to make the header navigation hidden when page scrolled down.
.page-header.off-canvas { top: -89px; }
4. The CSS to reveal the header navigation when page scrolled up.
.page-header.fixed {
top: 0;
z-index: 9999;
}
5. Include the latest version of jQuery library at the end of the web page.
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
6. Detect the scroll events and add/remove appropriate CSS classes to reavel/hide the header navigation.
(function($){
$(function(){
var scroll = $(document).scrollTop();
var headerHeight = $('.page-header').outerHeight();
$(window).scroll(function() {
var scrolled = $(document).scrollTop();
if (scrolled > headerHeight){
$('.page-header').addClass('off-canvas');
} else {
$('.page-header').removeClass('off-canvas');
}
if (scrolled > scroll){
$('.page-header').removeClass('fixed');
} else {
$('.page-header').addClass('fixed');
}
scroll = $(document).scrollTop();
});
});
})(jQuery);
This awesome jQuery plugin is developed by andykleeman. For more Advanced Usages, please check the demo page or visit the official website.











