使用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 相关文章推荐
js如何实现淡入淡出效果
Nov 18 Javascript
分享jQuery封装好的一些常用操作
Jul 28 Javascript
深入浅出ES6新特性之函数默认参数和箭头函数
Aug 01 Javascript
JavaScript日期选择功能示例
Jan 16 Javascript
巧用canvas
Jan 21 Javascript
vue实现todolist单页面应用
Apr 11 Javascript
详解Angular 4.x 动态创建组件
Apr 25 Javascript
利用Ionic2 + angular4实现一个地区选择组件
Jul 27 Javascript
gulp构建小程序的方法步骤
May 31 Javascript
node中使用log4js4.x版本记录日志的方法
Aug 20 Javascript
js实现网页版贪吃蛇游戏
Feb 22 Javascript
JS造成内存泄漏的几种情况实例分析
Mar 02 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
php实现下载限制速度示例分享
2014/02/13 PHP
PHP实现的简单路由和类自动加载功能
2018/03/13 PHP
js资料toString 方法
2007/03/13 Javascript
javascript之ESC(第二类混淆)
2007/05/06 Javascript
js实现点击后将文字或图片复制到剪贴板的方法
2014/08/04 Javascript
js网页右下角提示框实例
2014/10/14 Javascript
jQuery中:image选择器用法实例
2015/01/03 Javascript
Javascript6中字符串的四个新用法分享
2016/09/11 Javascript
关于js原型的面试题讲解
2016/09/25 Javascript
js中的eval()函数把含有转义字符的字符串转换成Object对象的方法
2016/12/02 Javascript
javascript实现滑动解锁功能
2017/03/22 Javascript
Vue.extend构造器的详解
2017/07/17 Javascript
详解Webstorm 新建.vue文件支持高亮vue语法和es6语法
2017/10/26 Javascript
Vue项目实现简单的权限控制管理功能
2019/07/17 Javascript
使用vue实现多规格选择实例(SKU)
2019/08/23 Javascript
vue-cli3跨域配置的简单方法
2019/09/06 Javascript
解决Vue大括号字符换行踩的坑
2020/11/09 Javascript
python时间整形转标准格式的示例分享
2014/02/14 Python
python自定义解析简单xml格式文件的方法
2015/05/11 Python
python pygame实现方向键控制小球
2019/05/17 Python
tensorflow如何批量读取图片
2019/08/29 Python
python安装本地whl的实例步骤
2019/10/12 Python
如何基于python操作json文件获取内容
2019/12/24 Python
Python 分布式缓存之Reids数据类型操作详解
2020/06/24 Python
使用python实现下载我们想听的歌曲,速度超快
2020/07/09 Python
利用python为PostgreSQL的表自动添加分区
2021/01/18 Python
python快速安装OpenCV的步骤记录
2021/02/22 Python
Crocs卡骆驰洞洞鞋日本官方网站:Crocs日本
2016/08/25 全球购物
YesStyle美国/全球:购买亚洲时装、美容化妆品和生活百货
2017/01/16 全球购物
Ted Baker美国官网:英国时尚品牌
2018/10/29 全球购物
Java面试题汇总
2015/12/06 面试题
家长给小学生的评语
2014/01/30 职场文书
四年大学生活的自我评价范文
2014/02/07 职场文书
项目经理任命书内容
2014/06/06 职场文书
毕业感言怎么写
2015/07/31 职场文书
室外天线与收音机天线杆接合方法
2022/04/05 无线电