💻 Push menu plugin that slides out an off-canvas navigation from the edge of the screen
JavaScript CSS
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
src Fix #1 Aug 30, 2015
.jshintrc jshint config Jul 27, 2015
package.json 0.1.8 Aug 30, 2015




npm version Bower version

SecretNav is a small jQuery push menu plugin that slides out an off-canvas navigation from the edge of the screen while pushing the main content away with a fancy CSS3 powered 3D perspective effect.

This plugin has been inspired by the amazing work done by the Codrops team, specifically by the effects presented in this article. The code is based in their initial implementation.


## Install

The plugin requires jQuery 1.7 or higher, and Modernizr. Install via npm, bower or download as a zip:

npm install jquery.secretnav
bower install jquery.secretnav

## Demo

Live demonstration:

You can find the demo files in here.


Include jQuery and Modernzr, and then the SecretNav plugin and its CSS styles. These files can be found in the dist/ folder. A custom build of Modernizr containing only what SecretNav requires can be found in demo/js/

<script src="path/to/jquery.js"></script>
<script src="path/to/modernizr.js"></script>
<script src="path/to/jquery.secretnav.min.js"></script>
<link rel="stylesheet" type="text/css" href="path/to/jquery.secretnav.css" />

Then, initialize the plugin:

$( document ).ready(function() {
    $( '#container' ).SecretNav({		
    	navSelector: 'nav',			// selector of the nav tag
		openSelector: '.open-menu',	// selector of the menu's opener
		position: 'left'			// left | top

Your HTML should look similar to this:

	<div id="container"> The content ... <a class="open-menu">Open menu</a> </div>
		<a href="#">Link 1</a>
		<a href="#">Link n</a>

## AMD

SecretNav can also be used with require.js.


SecretNav comes with a basic styling. If you want to customize the appearance you can modify the styles in src/sass/jquery.secretnav.scss, and then re-run the grunt command to generate the distribution files again.


You are invited to contribute code and suggestions to this project. The more the merrier.

Got something to say? let's get in touch: @jachinte. Please let me know if you're using SecretNav, it's always nice to see what you're using it for!