A Simple Slideout Menu
By Forrest Smith - Drempd.com
I just wanted an easy slideout menu. Click on a link, and the menu slides out from the left side of the screen. Click on the link again, or somewhere else on the page, and the menu slides back in. Here it is:
HTML Code
data-openwidth is the width in pixels of however wide you want the menu to be when opened.
CSS Code:
.slideout-content { display: none; z-index: 1999; position: fixed; top: 0; bottom: 0; }
Javascript Code:
$(document).ready(function () { $('#idOfOpenLink').click(OpenMenu); }); $(document).mouseup(function (e) { var container = $(".slideout-content"); var openWidth = container.attr('data-openwidth') || 300; //If the user clicks off the menu, close it //This checks to make sure the user didn't click the menu, or a child element: if (!container.is(e.target) && container.has(e.target).length === 0 && container.is(":visible")) { MenuSlide_In(container, openWidth); } }); function MenuSlide() { var container = $(".slideout-content"); var openWidth = container.attr('data-openwidth') || 300; if (container.is(":visible")) { MenuSlide_In(container, openWidth); } else { MenuSlide_Out(container, openWidth); } } function MenuSlide_In(container,openWidth) { container.css({ width: openWidth + 'px' }).show().animate({ width: '0px' }, 500, function () { container.hide(); }); } function MenuSlide_Out(container, openWidth) { container.css({ width: 0 }).show().animate({ width: openWidth + 'px' }, 500, function () { }); }
-
Adventure
-
The Built Environment
-
Locations
-
Web Dev