Simplest Responsive Nav Menu With jQuery And CSS3 - nav-mobile.js
File Size: | 3.14 KB |
---|---|
Views Total: | 9223 |
Last Update: | |
Publish Date: | |
Official Website: | Go to website |
License: | MIT |

Just another jQuery & CSS based mobile-friendly navigation system that automatically converts the regular horizontal site menu into a sliding dropdown menu with a toggle link.
How to use it:
1. Create the site navigation with a mobile menu toggle link on your webpage.
<nav class="nav"> <a class="toggle-nav" href="#">☰</a> <div class="nav-mobile"> <ul class="left"> <li><a href="#">Home</a></li> <li><a href="#">Categories</a></li> <li><a href="#">Most Popular</a></li> </ul> <ul class="right"> <li> <a href="#">About</a> </li> <li> <a href="#">Contact</a> </li> </ul> </div> </nav>
2. The CSS to style the site navigation.
a { color: #fff; text-decoration: none; } ul { list-style: none; } .nav { background: #0275d8; min-height: 50px; } .nav .left { float: left; margin-left: 1em; } .nav .left li { border-bottom: 1px solid #ED5565; font-size: 14px; float: left; } .nav .left li a { display: block; padding: 10px 15px; line-height: 30px; } .nav .left li a:hover { background: #ED5565; } .nav .right { float: right; margin-right: 1em; } .nav .right li { border-bottom: 1px solid #ED5565; font-size: 14px; float: left; } .nav .right li a { display: block; padding: 10px 15px; line-height: 30px; } .nav .right li a:hover { background: #ED5565; } .toggle-nav { display: none; } .nav-mobile style { display: block; }
3. Style the dropdown menu on small screens like mobile & tablet using CSS3 media queries.
@media only screen and (max-width: 768px) { .nav { border-bottom: 1px solid rgba(0,0,0,0.1); } .toggle-nav { display: block; padding: 10px; position: absolute; right: 10px; line-height: 30px; } .toggle-nav:after { content: ' Menu'; } .nav-mobile { display: none; } .style-mobile { background: #DA4453; top : 51px; position : absolute; width : 100%; } .style-mobile li { display: block; width: 100%; } .nav .right { display: block; float: none; margin: 0em; } .nav .left { display: block; float: none; margin: 0em; } }
4. Include the necessary jQuery library at the bottom of your webpage.
<script src="//code.jquery.com/jquery-2.2.1.min.js"></script>
5. Active the responsive nav menu with a little jQuery script.
$(function(){ // Returns width of browser viewport var browser = $(window).width(); // Returns width of HTML document var document = $(document).width(); var nav = $('.nav .toggle-nav'); nav.click(function(e){ $('.nav .nav-mobile').addClass('style-mobile').slideToggle('slow'); e.preventDefault(); }); });
This awesome jQuery plugin is developed by JhonatanC. For more Advanced Usages, please check the demo page or visit the official website.