Fullscreen Hamburger Toggle Menu With jQuery And CSS3
File Size: | 6.56 KB |
---|---|
Views Total: | 5345 |
Last Update: | |
Publish Date: | |
Official Website: | Go to website |
License: | MIT |

A cross-platform side navigation written in jQuery and CSS/CSS3 that allows to show a fullscreen overlay menu with an animated hamburger toggle icon.
How to use it:
1. The html for the hamburger toggle icon.
<div id="nav-icon"> <span></span> <span></span> <span></span> </div>
2. Style & animate the toggle icon.
#nav-icon { position: relative; margin: 0 auto; width: 45px; height: 40px; z-index: 10; /* Bring icon ontop of overlay */ cursor: pointer; -webkit-transform: rotate(0deg); transform: rotate(0deg); -webkit-transition: .5s ease-in-out; transition: .5s ease-in-out; } #nav-icon span { position: absolute; display: block; width: 100%; height: 4px; background: teal; border-radius: 9px; opacity: 1; left: 0; -webkit-transform: rotate(0deg); transform: rotate(0deg); -webkit-transition: .25s ease-in-out; transition: .25s ease-in-out; } #nav-icon span:nth-child(1) { top: 0px; } #nav-icon span:nth-child(2) { top: 18px; } #nav-icon span:nth-child(3) { top: 36px; } #nav-icon.animate-icon span:nth-child(1) { top: 18px; -webkit-transform: rotate(135deg); transform: rotate(135deg); } #nav-icon.animate-icon span:nth-child(2) { opacity: 0; left: -60px; } #nav-icon.animate-icon span:nth-child(3) { top: 18px; -webkit-transform: rotate(-135deg); transform: rotate(-135deg); }
3. Create the fullscreen overlay menu:
<div id="overlay"> <div> <ul> <li><a href="#">Home</a></li> <li><a href="#">Abou</a></li> <li><a href="#">Contact</a></li> </ul> </div> </div>
4. The primary CSS/CSS3 styles for the fullscreen overlay menu.
#overlay { display: -webkit-box; display: -ms-flexbox; display: flex; /* Overlay positioning */ display: none; position: absolute; left: 0; top: 0; width: 100%; /* Want a left- or right sided navigation instead? Just play around with the width! */ height: 100%; background: rgba(0, 0, 0, 0.7); } #overlay div { display: -webkit-box; display: -ms-flexbox; display: flex; width: 100%; height: 100vh; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; } #overlay ul { list-style: none; margin: 0; padding: 0; color: white; text-align: center; }
5. The fullscreen overlay menu requires the latest version of jQuery library loaded in the document.
<script src="//code.jquery.com/jquery-3.1.1.min.js"></script>
6. The JavaScript to toggle the hamburger-icon animation and add the fullscreen-menu overlay when clicked.
$(document).ready(function(){ $('#nav-icon').click(function(){ $(this).toggleClass('animate-icon'); $('#overlay').fadeToggle(); }); });
7. The JavaScript to close the fullscreen overlay menu and reset hamburger-icon.
$(document).ready(function(){ $('#overlay').click(function(){ $('#nav-icon').removeClass('animate-icon'); $('#overlay').toggle(); }); });
This awesome jQuery plugin is developed by Mbensler. For more Advanced Usages, please check the demo page or visit the official website.