Creating menus for mobile users gives webdesigners a unique challenge, which can be dealt with in very different ways. One of the quickest ways is to use a jquery plugin, now if you are not loading jquery as part of your site already this might be overkill just to use it for a menu. But a lot of us use JQuery so this can be a good solution.
TinyNav.js
Easy to install, simple to use. It makes a select when the browser size i small and it does exactly what it says on the tin. No more and no less.
Find it here: http://tinynav.viljamis.com
Mobile Menu
This plugin creates a drawer-style navigation on your mobile site, such as the ones you see on iOS. Has a couple of different settings you can customize.
Find it here: https://github.com/brewern/mobile-menu
Responsive-Menu
Another easy to implement solution that gives you a select option on smaller screens. This one has some different options. Stuff like what the first option should be named and at what width the menu should change.
Find it here: https://github.com/mattkersley/Responsive-Menu
jPanelMenu
jPanelMenu creates a panel menu that pops out when you hit the menu button, similar to facebook and others. This is another great solution with lots of great features.
Find it here: http://jpanelmenu.com
JQuery-Mobile-Slide-Menu
A mobile slide menu, has a very smooth sliding effect. Note that this menu uses jquery mobile, which might be a bit too heavy if you are online using it for the menu.
Find it here: https://github.com/tegansnyder/JQuery-Mobile-Slide-Menu
Is JQuery the only solution?
NO! In some cases it’s not even a good solution. There are around 243 ways to create a mobile menu You could be using something like bootstrap or another framework which gives you options, or make your own to fit your needs.