码迷,mamicode.com
首页 > Web开发 > 详细

基于jQuery倾斜打开侧边栏菜单代码

时间:2015-09-14 10:37:52      阅读:242      评论:0      收藏:0      [点我收藏+]

标签:

基于jQuery多重图片无限循环动画效果。这是一款非常实用的jQuery多图片无限循环动画特效插件。效果图如下:

技术分享

在线预览    源码下载

实现的代码。

html代码:

<div id="paper-back">
       <nav>
           <div class="close"></div>
           <a href="#">Home</a>
           <a href="#">About Us</a>
           <a href="#">Our Work</a>
           <a href="#">Contact</a>
       </nav>
   </div>
   <div id="paper-window">
       <div id="paper-front">
           <div class="hamburger"><span></span></div>
           <div id="container">
               <section>
                   <p>点击左上角的按钮打开菜单</p>
                   <p>适用浏览器:360、FireFox、Chrome、Safari、Opera、傲游、搜狗、世界之窗. <br>不支持IE8及以下浏览器。</p>
                   <p>
                   <script src="/scripts/2bc/_gg_980_90.js" type="text/javascript"></script></p>
               </section>
               <section></section>
           </div>
       </div>
   </div>

js代码:

var paperMenu = {
          $window: $(‘#paper-window‘),
          $paperFront: $(‘#paper-front‘),
          $hamburger: $(‘.hamburger‘),
          offset: 1800,
          pageHeight: $(‘#paper-front‘).outerHeight(),
          open: function () {
              this.$window.addClass(‘tilt‘);
              this.$hamburger.off(‘click‘);
              $(‘#container, .hamburger‘).on(‘click‘, this.close.bind(this));
              this.hamburgerFix(true);
              // console.log(‘opening...‘);
          },
          close: function () {
              this.$window.removeClass(‘tilt‘);
              $(‘#container, .hamburger‘).off(‘click‘);
              this.$hamburger.on(‘click‘, this.open.bind(this));
              this.hamburgerFix(false);
              // console.log(‘closing...‘);
          },
          updateTransformOrigin: function () {
              scrollTop = this.$window.scrollTop();
              equation = (scrollTop + this.offset) / this.pageHeight * 100;
              this.$paperFront.css(‘transform-origin‘, ‘center ‘ + equation + ‘%‘);
          },
          hamburgerFix: function (opening) {
              if (opening) {
                  $(‘.hamburger‘).css({
                      position: ‘absolute‘,
                      top: this.$window.scrollTop() + 30 + ‘px‘
                  });
              } else {
                  setTimeout(function () {
                      $(‘.hamburger‘).css({
                          position: ‘fixed‘,
                          top: ‘30px‘
                      });
                  }, 300);
              }
          },
          bindEvents: function () {
              this.$hamburger.on(‘click‘, this.open.bind(this));
              $(‘.close‘).on(‘click‘, this.close.bind(this));
              this.$window.on(‘scroll‘, this.updateTransformOrigin.bind(this));
          },
          init: function () {
              this.bindEvents();
              this.updateTransformOrigin();
          }
      };
      paperMenu.init();

via:http://www.w2bc.com/article/jquery-left-lean-nav

基于jQuery倾斜打开侧边栏菜单代码

标签:

原文地址:http://www.cnblogs.com/w2bc/p/4806422.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!