Facebook-like mobile navigation

HTML

<div id="wrapper">
        <header>
            <button id="panel-toggle">Toggle</button>
        </header>
        <div id="panel">
            <section>
                <h1>First section</h1>
                <ul>
                    <li><a href="#">item 1</a></li>
                    <li><a href="#">item 2</a></li>
                    <li><a href="#">item 3</a></li>
                </ul>
            </section>
            <section>
                <h1>Second section</h1>
                <ul>
                    <li><a href="#">item 4</a></li>
                    <li><a href="#">item 5</a></li>
                    <li><a href="#">item 6</a></li>
                </ul>
            </section>
            <section>
                <h1>Third section</h1>
                <ul>
                    <li><a href="#">item 7</a></li>
                    <li><a href="#">item 8</a></li>
                    <li><a href="#">item 9</a></li>
                </ul>
            </section>
            <section>
                <h1>Third section</h1>
                <ul>
                    <li><a href="#">item 7</a></li>
                    <li><a href="#">item 8</a></li>
                    <li><a href="#">item 9</a></li>
                </ul>
            </section>
            <section>
                <h1>Third section</h1>
                <ul>
                    <li><a href="#">item 7</a></li>
                    <li><a href="#">item 8</a></li>
                    <li><a href="#">item 9</a></li>
                </ul>
            </section>
            <section>
                <h1>Third section</h1>
                <ul>
                    <li><a href="#">item 7</a></li>
                    <li><a href="#">item 8</a></li>
                    <li><a href="#">item 9</a></li>
                </ul>
            </section>        
        </div>
        <section id="content">
            <h1>Here comes the content</h1>
            <p class="description">Lorem ipsum dolor sit amet,...

CSS

html,
body {
  height: 100%;
  padding: 0;
  margin: 0;
}
body {
  font-family: sans-serif;
}
#wrapper {
  position: relative;
  width: 100%;
  min-height: 100%;
  background: #ccc;
}
#wrapper > header:first-of-type {
  background: #777;
  display: block;
  width: 100%;
  position: relative;
  z-index: 1;
  padding: .2em 0;
  margin-right: 0;
  position: fixed;
  -webkit-transition: margin-left 0.2s ease-out;
  -moz-transition: margin-left 0.2s ease-out;
  -o-transition: margin-left 0.2s ease-out;
  -ms-transition: margin-left 0.2s ease-out;
  transition: margin-left 0.2s ease-out;
}
#panel {
  width: 87%;
  padding: 0 0 1em;
  margin: 0;
  position: absolute;
  height: 100%;
  background: #ccc;
  z-index: 0;
  top: 0;
  left: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
#content {
  width: 100%;
  margin-left: 0;
  position: relative;
  background: white;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: margin-left 0.2s ease-out;
  -moz-transition: margin-left 0.2s ease-out;
  -o-transition: margin-left 0.2s ease-out;
  -ms-transition: margin-left 0.2s ease-out;
  transition: margin-left 0.2s ease-out;
  padding: 4em 1em 1em;
}
.shifted #content,
.shifted > header {
  margin-left: 87%;
}
.shifted #content {
  position: fixed;
  -webkit-box-shadow: -2px 0 0.5em rgba(0, 0, 0, 0.5);
  -moz-box-shadow: -2px 0 0.5em rgba(0, 0, 0, 0.5);
  box-shadow: -2px 0 0.5em rgba(0, 0, 0, 0.5);
}
.shifted #panel {
  overflow: scroll;
  -webkit-overflow-scrolling: touch;
}
#content h1 {
  font-size: 1.5em;
  font-weight: bold;
}
#panel h1 {
  font-size: 1em;
  text-transform: uppercase;
  font-weight: bold;
  background: #999;
  margin-top: 0;
}
#panel-toggle {
  display: inline-block;
  position: relative;
  min-height: 38px;
  width: 12%;
  margin-left: 1%;
  text-indent: 200%;
  overflow: hidden;
  border:...

JavaScript

/*globals alert:false, console:false*/

$(function () {
    var contentOff = 0, panelOff = 0;
    $('#panel-toggle').click(function (e) {
        var $wrapper = $('#wrapper'),
            $content = $('#content'),
            $panel = $('#panel');
        if (!$wrapper.hasClass('shifted')) {
            contentOff = window.scrollY;
            $wrapper.addClass('shifted');
            $panel.scrollTop(panelOff);
            $content.css('top', '-' + contentOff + 'px');
        } else {
            panelOff = $panel.scrollTop();
            $wrapper.removeClass('shifted');
            $content.removeAttr('style');
            $(window).scrollTop(contentOff);
        }
        e.preventDefault();
    });
});