使用jquery+CSS3实现仿windows10开始菜单的下拉导航菜单特效


Posted in Javascript onSeptember 24, 2015

这是一款仿windows10开始菜单的下拉导航菜单特效。该下拉菜单使用jQuery和CSS3来完成类似windows10开始菜单样式效果,它的代码简洁,效果非常时尚。

使用jquery+CSS3实现仿windows10开始菜单的下拉导航菜单特效

查看演示      源码下载

该下拉菜单的HTML结构非常简单,基本的HTML结构如下:

<div id="top-bar" class="top-bar">
 <div class="bar">
  <button id="navbox-trigger" class="navbox-trigger"><i class="fa fa-lg fa-th"></i></button>
 </div>
 <div class="navbox">
  <div class="navbox-tiles">
  <a href="#" class="tile">
   <div class="icon"><i class="fa fa-home"></i></div><span class="title">Home</span>
  </a>
  ......
  </div>
 </div>
</div>

CSS样式

在CSS样式中,顶部导航条.top-bar设置为固定高度50像素和相对定位,并给出一个较高的z-index值。

.top-bar {
 height: 50px;
 position: relative;
 z-index: 1000;
}

下拉菜单.navbox开始的时候是隐藏的,它采用绝对定位,通过translateY方法将它移动到导航条上方200像素的地方。

.top-bar .navbox {
 visibility: hidden;
 opacity: 0;
 position: absolute;
 top: 100%;
 left: 0;
 z-index: 1;
 -webkit-transform: translateY(-200px);
  -ms-transform: translateY(-200px);
   transform: translateY(-200px);
 -webkit-transition: all .2s;
   transition: all .2s;
}

接着在下拉菜单被激活的时候,它的透明度被设置回1,变为可见状态,并通过translateY方法将它移动回原来的位置。

.top-bar.navbox-open .navbox {
 visibility: visible;
 opacity: 1;
 -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
   transform: translateY(0);
 -webkit-transition: opacity .3s, -webkit-transform .3s;
   transition: opacity .3s, transform .3s;
}

JavaScript

该特效中使用jQUery切换相应的class类和用于打开菜单按钮。

(function () {
 $(document).ready(function () {
 $('#navbox-trigger').click(function () {
  return $('#top-bar').toggleClass('navbox-open');
 });
 return $(document).on('click', function (e) {
  var $target;
  $target = $(e.target);
  if (!$target.closest('.navbox').length && !$target.closest('#navbox-trigger').length) {
  return $('#top-bar').removeClass('navbox-open');
  }
 });
 });
}.call(this));
Javascript 相关文章推荐
Javascript的数组与字典用法与遍历对象的属性技巧
Nov 07 Javascript
Node.js中对通用模块的封装方法
Jun 06 Javascript
基于JQuery实现图片轮播效果(焦点图)
Feb 02 Javascript
AngularJS入门教程之AngularJS 模板
Aug 18 Javascript
jQuery解析XML 详解及方法总结
Sep 28 Javascript
javascript正则表达式模糊匹配IP地址功能示例
Jan 06 Javascript
Angular.js与node.js项目里用cookie校验账户登录详解
Feb 22 Javascript
vue.js前后端数据交互之提交数据操作详解
Apr 24 Javascript
element-ui的回调函数Events的用法详解
Oct 16 Javascript
从理论角度讨论JavaScript闭包
Apr 03 Javascript
vue 实现微信浮标效果
Sep 01 Javascript
vue3修改link标签默认icon无效问题详解
Oct 09 Javascript
javascript同步服务器时间和同步倒计时小技巧
Sep 24 #Javascript
js中不同的height, top的区别对比
Sep 24 #Javascript
JS+CSS实现鼠标滑过时动态翻滚的导航条效果
Sep 24 #Javascript
avalon js实现仿google plus图片多张拖动排序附源码下载
Sep 24 #Javascript
JS+CSS实现简易的滑动门效果代码
Sep 24 #Javascript
JS实现网站菜单拖拽移位效果的方法
Sep 24 #Javascript
jQuery实现的经典竖向伸缩菜单效果代码
Sep 24 #Javascript
You might like
一个查看session内容的函数
2006/10/09 PHP
如何判断php数组的维度
2013/06/10 PHP
php实现的IMEI限制的短信验证码发送类
2015/05/05 PHP
yii2高级应用之自定义组件实现全局使用图片上传功能的方法
2016/10/08 PHP
[原创]PHP获取数组表示的路径方法分析【数组转字符串】
2017/09/01 PHP
PHP ADODB生成HTML表格函数rs2html功能【附错误处理函数用法】
2018/05/29 PHP
学习jquery必备 api中英文对照的chm手册 下载
2007/05/03 Javascript
理解Javascript_06_理解对象的创建过程
2010/10/15 Javascript
jQuery学习笔记之jQuery的事件
2010/12/22 Javascript
web性能优化之javascript性能调优
2012/12/28 Javascript
jquery实现点击向下展开菜单项(伸缩导航)效果
2015/08/22 Javascript
使用three.js 画渐变的直线
2016/06/05 Javascript
js 获取图像缩放后的实际宽高,位置等信息
2017/03/07 Javascript
vue.js实现格式化时间并每秒更新显示功能示例
2018/07/07 Javascript
解决layui 复选框等内置控件不显示的问题
2018/08/14 Javascript
vue-vuex中使用commit提交mutation来修改state的方法详解
2018/09/16 Javascript
微信小程序授权登录及解密unionId出错的方法
2018/09/26 Javascript
详解vue2.0 资源文件assets和static的区别
2018/11/27 Javascript
vue 源码解析之虚拟Dom-render
2019/08/26 Javascript
Layui数据表格之单元格编辑方式
2019/10/26 Javascript
Python 连连看连接算法
2008/11/22 Python
Python编程之属性和方法实例详解
2015/05/19 Python
Tensorflow之构建自己的图片数据集TFrecords的方法
2018/02/07 Python
解决django后台管理界面添加中文内容乱码问题
2019/11/15 Python
浅谈Python中threading join和setDaemon用法及区别说明
2020/05/02 Python
webView加载html图片遇到的问题解决
2019/10/08 HTML / CSS
信息专业个人的自我评价
2013/12/27 职场文书
物理教学随笔感言
2014/02/22 职场文书
演讲稿的写法
2014/05/19 职场文书
八一建军节营销活动方案
2014/08/31 职场文书
加强机关作风建设心得体会
2014/10/22 职场文书
2014年教研室工作总结
2014/12/06 职场文书
学校会议通知范文
2015/04/15 职场文书
呼啸山庄读书笔记
2015/06/29 职场文书
php 获取音视频时长,PHP 利用getid3 获取音频文件时长等数据
2021/04/01 PHP
python实现商品进销存管理系统
2022/05/30 Python