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


Posted in Javascript onSeptember 15, 2015

基于jQuery多重图片无限循环动画效果。这是一款非常实用的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>适用浏览器:、FireFox、Chrome、Safari、Opera、傲游、搜狗、世界之窗. <br>不支持IE及以下浏览器。</p>
     <p>
     <script src="/scripts/bc/_gg__.js" type="text/javascript"></script></p>
    </section>
    <section></section>
   </div>
  </div>
 </div>

js代码:

var paperMenu = {
   $window: $('#paper-window'),
   $paperFront: $('#paper-front'),
   $hamburger: $('.hamburger'),
   offset: ,
   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 * ;
    this.$paperFront.css('transform-origin', 'center ' + equation + '%');
   },
   hamburgerFix: function (opening) {
    if (opening) {
     $('.hamburger').css({
      position: 'absolute',
      top: this.$window.scrollTop() + + 'px'
     });
    } else {
     setTimeout(function () {
      $('.hamburger').css({
       position: 'fixed',
       top: 'px'
      });
     }, );
    }
   },
   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();
Javascript 相关文章推荐
jQuery 入门级学习笔记及源码
Jan 22 Javascript
Array.prototype.slice.apply的使用方法
Mar 17 Javascript
js模拟类继承小例子
Jul 17 Javascript
javascript 控制input只允许输入的各种指定内容
Jun 19 Javascript
原生js实现类似弹窗抖动效果
Apr 02 Javascript
jQuery实现点击小图显示大图代码分享
Aug 25 Javascript
vue2组件实现懒加载浅析
Mar 29 Javascript
手把手教你搭建ES6的开发运行环境
Jul 11 Javascript
Javascript Promise用法详解
May 10 Javascript
Vue SPA 初次进入加载动画实现代码
Nov 14 Javascript
vue+iview使用树形控件的具体使用
Nov 02 Javascript
WebPack工具运行原理及入门教程
Dec 02 Javascript
基于jQuery滑动杆实现购买日期选择效果
Sep 15 #Javascript
JavaScript 封装一个tab效果源码分享
Sep 15 #Javascript
jQuery简单实现两级下拉菜单效果代码
Sep 15 #Javascript
黑帽seo劫持程序,js劫持搜索引擎代码
Sep 15 #Javascript
JavaScript实现仿新浪微博大厅和腾讯微博首页滚动特效源码
Sep 15 #Javascript
JS实现仿FLASH效果的竖排导航代码
Sep 15 #Javascript
JS+CSS实现自适应选项卡宽度的圆角滑动门效果
Sep 15 #Javascript
You might like
PHP环境中Memcache的安装和使用
2015/11/05 PHP
php脚本运行时的超时机制详解
2016/02/17 PHP
JavaScript 内置对象属性及方法集合
2010/07/04 Javascript
jQuery UI AutoComplete 自动完成使用小记
2010/08/21 Javascript
flexigrid 参数说明
2010/11/23 Javascript
Javascript图像处理—亮度对比度应用案例
2013/01/03 Javascript
禁止iframe页面的所有js脚本如alert及弹出窗口等
2014/09/03 Javascript
基于NodeJS的前后端分离的思考与实践(四)安全问题解决方案
2014/09/26 NodeJs
js获取form的方法
2015/05/06 Javascript
JavaScript检测鼠标移动方向的方法
2015/05/22 Javascript
IE和Firefox之间在JavaScript语法上的差异
2016/04/22 Javascript
JavaScript浏览器对象之一Window对象详解
2016/06/03 Javascript
Bootstrap编写一个兼容主流浏览器的受众门户式风格页面
2016/07/01 Javascript
在一般处理程序(ashx)中弹出js提示语
2017/08/16 Javascript
利用Node.js了解与测量HTTP所花费的时间详解
2017/09/22 Javascript
vue-cli webpack模板项目搭建及打包时路径问题的解决方法
2018/02/26 Javascript
vue router 源码概览案例分析
2018/10/09 Javascript
详解Vue webapp项目通过HBulider打包原生APP(vue+webpack+HBulider)
2019/02/02 Javascript
基于Vue2-Calendar改进的日历组件(含中文使用说明)
2019/04/14 Javascript
JSON是什么?有哪些优点?JSON和XML的区别?
2019/04/29 Javascript
[03:01]完美世界DOTA2联赛PWL S2 集锦第二期
2020/12/03 DOTA
Python兔子毒药问题实例分析
2015/03/05 Python
python使用datetime模块计算各种时间间隔的方法
2015/03/24 Python
十条建议帮你提高Python编程效率
2016/02/16 Python
python数据结构学习之实现线性表的顺序
2018/09/28 Python
Python实现把类当做字典来访问
2019/12/16 Python
会计电算化个人自我评价
2013/11/17 职场文书
西北政法大学自主招生自荐信
2014/01/29 职场文书
学历公证委托书
2014/04/09 职场文书
横幅标语大全
2014/06/17 职场文书
干部个人对照检查材料
2014/08/25 职场文书
2015年小学校长工作总结
2015/05/19 职场文书
升学宴学生致辞
2015/07/27 职场文书
2016庆祝教师节新闻稿
2015/11/25 职场文书
手写实现JS中的new
2021/11/07 Javascript
Golang 链表的学习和使用
2022/04/19 Golang