Dev Depot: Slidebars, Sliding Menus for Responsive Design
Web designers seeking to accommodate the rapidly growing number of mobile web users are embracing new ways to support robust navigational menus on various devices — from tiny phones to tablets, the desktop and beyond. One technique that is gaining in popularity is the use of fly-out menus on the sides of a web page, triggered via text links, scripting or navigation bar icons, and more. It is an attractive and effective means of making it easy for visitors to navigate their way around your site to find what they want, and through the use of jQuery, can be enhanced by using smooth, animated transitions.
According to its publisher, Slidebars (plugins.adchsm.me/slidebars/) is a jQuery plugin for quickly and easily implementing app-style revealing, overlay and push menus and sidebars into any website.
“Slidebars was born from a reoccurring need to create off-canvas sliding mobile menus for responsive design,” Slidebars author Adam Smith explains. “It’s ultra-light at 1469 bytes (JS) and 499 bytes (CSS) when gzipped, uses hardware accelerated transitions where possible for quick and smooth animation, [and falls] back to jQuery .animate() on unsupported browsers.”
Slidebars are responsive and will resize along with the browser window, as well as handle changes in orientation so that mobile users will have easy access to menu items —regardless of how they hold their device.
“Slidebars aren’t just for handheld devices, they can be used for implementing revealing content on sites and screens of all sizes,” Smith says. “You can also add this site to your home screen — try it and see how it can make your web apps feel native.”
Getting Slidebars to work on your own website is simple, and begins with a download of the latest version of the script and style sheet. Next, include the Meta viewport tag in the page’s <head> element to ensure that the page will render correctly.
The following snippet shows the basic structure:
<meta name=”viewport” content=”width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no”>
Next, wrap all site content except the Slidebars in an element with id of #sbsite, which must be a direct child of the <body>. Each Slidebar is also a direct child of the <body> and must use a base class of .sb-slidebar, with a modifer class to set its side.
Optional classes can also be used to control the Slidebars, as can a custom API.
It’s important to note that the slidebars.min.css or slidebars.css file must be called from the <head> of your web page, before the site’s style sheets. Finally, call the $.slidebars() method using the provided copy and paste code. Slidebars was last updated in March, so the code is current and under development.
Both original and minified versions are included in the free download, along with basic templates that include examples for mobile only, API usage, custom widths and animation styles. Comprehensive documentation eases the already simple setup process.