jQuery实现简单漂亮的Nav导航菜单效果


Posted in jQuery onMarch 29, 2017

本文实例讲述了jQuery实现简单漂亮的Nav导航菜单效果。分享给大家供大家参考,具体如下:

自己写的一个简单的导航菜单,先看效果:

jQuery实现简单漂亮的Nav导航菜单效果

鼠标悬浮时菜单项向上移动成蓝底白字,点击之后底部会有蓝条表示当前选中项。

页面代码,菜单的每一项都是一个 div ,其中包括一个 ul 用来放置显示文字等,另一个 div 则是底部的蓝条,需要给第一项和最后一项设置不同的 class ,样式需要用到:

<div id="nav">
<div class="navItem indexNavItem">


<ul class="navUl">



<li>首页</li>



<li class="hoverLi">首页</li>


</ul>


<div class="highlighter selectedNav"></div>

</div>

<div class="navItem">


<ul class="navUl">



<li>A</li>



<li class="hoverLi">A</li>
    </ul>


<div class="highlighter"></div>

</div>

<div class="navItem lastNavItem">


<ul class="navUl">



<li>A</li>



<li class="hoverLi">A</li>


</ul>


<div class="highlighter"></div>

</div>

<div id="logoutNavItem" class="navItem logoutNavItem lastNavItem">


<ul class="navUl">



<li>退出</li>



<li class="hoverLi">退出</li>


</ul>


<div class="highlighter"></div>  

</div>
</div>

样式,主要就是每个菜单项的左右边框的设置以及 ul 和 li 的位置设置:

*
{
  padding: 0;
  margin: 0;
}
body
{
  background-color: #fffff3;
  font: 12px/1.6em Helvetica, Arial, sans-serif;
}
ul,li{
  list-style: none;
}
#nav
{
  text-align: center;
  height: 50px;
  font-size: 10px;
  line-height: 30px;
  background-color: #F0E6DB;
  margin-bottom: 10px;
}
.navItem
{
  cursor: pointer;
  position: relative;
  float: left;
  width: 100px;
  height: 50px;
  font-size: 15px;
  border-right: 2px solid rgb(255,255,255);
  border-left: 2px solid rgb(255,255,255);
  overflow: hidden;
  font-weight:bold;
}
.indexNavItem
{
  border-left: 4px solid rgb(255,255,255);
  margin-left: 10px;
}
.lastNavItem
{
  border-right: 4px solid rgb(255,255,255);
}
.logoutNavItem
{
  float: right;
  width: 120px;
  margin-right: 10px;
  border-left: 4px solid rgb(255,255,255);
}
.navUl
{
  position: relative;
  height: 100px;
  width: 100%;
  border-bottom: 5px solid rgb(2,159,212);
}
.navUl li
{
  height: 50px;
  line-height: 50px;
}
.highlighter
{
  position: absolute;
  bottom: 0;
  height: 5px;
  width: 100%;
}
.selectedNav
{
  background-color: #029FD4;
}
.hoverLi
{
  background-color: #029FD4;
  color: #ffffff;
}

接下来就是给菜单编写悬浮和单击事件的 js 代码了,悬浮时将 ul 上移 li 的高度,鼠标移开后再恢复,点击之后就是给蓝条的 div 添加样式即可:

$(function() {
  $(".navItem").hover(function() {
    $(this).children("ul").animate({
      top: "-50px"
    }, 100);
  }, function() {
    $(this).children("ul").animate({
      top: "0px"
    }, 100);
  });
  $(".navItem").click(function(event) {
    $(this).siblings().children('.highlighter').removeClass('selectedNav');
    $(this).children('.highlighter').addClass('selectedNav');
  });
})

希望本文所述对大家jQuery程序设计有所帮助。

jQuery 相关文章推荐
jQuery ajax请求struts action实现异步刷新
Apr 19 jQuery
node.js+jQuery实现用户登录注册AJAX交互
Apr 28 jQuery
jQuery实现的表格前端排序功能示例
Sep 18 jQuery
利用JQUERY实现多个AJAX请求等待的实例
Dec 14 jQuery
jquery自定义显示消息数量
Dec 19 jQuery
基于jquery trigger函数无法触发a标签的两种解决方法
Jan 06 jQuery
通过jquery的ajax请求本地的json文件方法
Aug 08 jQuery
jQuery使用each遍历循环的方法
Sep 19 jQuery
jQuery动态操作表单示例【基于table表格】
Dec 06 jQuery
javascript(基于jQuery)实现鼠标获取选中的文字示例【测试可用】
Oct 26 jQuery
Jquery ajax书写方法代码实例解析
Jun 12 jQuery
Jquery+javascript实现支付网页数字键盘
Dec 21 jQuery
jQuery实现的手风琴侧边菜单效果
Mar 29 #jQuery
jQuery实现字体颜色渐变效果的方法
Mar 29 #jQuery
jquery实现tab键进行选择后enter键触发click行为
Mar 29 #jQuery
jQuery插件之validation插件
Mar 29 #jQuery
jquery实现静态搜索功能(可输入搜索文字)
Mar 28 #jQuery
jQuery插件FusionCharts绘制的2D帕累托图效果示例【附demo源码】
Mar 28 #jQuery
BootStrap中jQuery插件Carousel实现轮播广告效果
Mar 27 #jQuery
You might like
php获取文件内容最后一行示例
2014/01/09 PHP
php中创建和调用webservice接口示例
2014/07/25 PHP
通过PHP自带的服务器来查看正则匹配结果的方法
2015/12/24 PHP
利用PHP扩展Xhprof分析项目性能实践教程
2018/09/05 PHP
15款优秀的jQuery导航菜单插件分享
2011/07/19 Javascript
form表单中去掉默认的enter键提交并绑定js方法实现代码
2013/04/01 Javascript
Nodejs学习笔记之NET模块
2015/01/13 NodeJs
javascript中关于&amp;&amp; 和 || 表达式的小技巧分享
2015/04/10 Javascript
Node.js环境下编写爬虫爬取维基百科内容的实例分享
2016/06/12 Javascript
D3.js实现雷达图的方法详解
2016/09/22 Javascript
js拖拽功能实现代码解析
2016/11/28 Javascript
jQuery.parseHTML() 函数详解
2017/01/09 Javascript
javacript replace 正则取字符串中的值并替换【推荐】
2018/09/13 Javascript
深入理解基于vue-cli的webpack打包优化实践及探索
2019/10/14 Javascript
详解小程序如何动态绑定点击的执行方法
2019/11/26 Javascript
[01:39](回顾)各路豪强针锋相对,几经鏖战四强产生
2014/07/01 DOTA
Python 内置函数进制转换的用法(十进制转二进制、八进制、十六进制)
2018/04/30 Python
Python通过调用有道翻译api实现翻译功能示例
2018/07/19 Python
用python建立两个Y轴的XY曲线图方法
2019/07/08 Python
python subprocess pipe 实时输出日志的操作
2020/12/05 Python
发现两个有趣的CSS3动画效果
2013/08/14 HTML / CSS
html5需遵循的6个设计原则
2016/04/27 HTML / CSS
iframe在移动端的缩放的示例代码
2018/10/12 HTML / CSS
韩国知名的家庭购物网站:CJmall
2016/08/01 全球购物
英国领先的珍珠首饰品牌:Orchira
2016/09/11 全球购物
微软台湾官方网站:Microsoft台湾
2018/08/15 全球购物
伦敦一家领先的精品零售商:IRIS Fashion
2019/05/24 全球购物
空指针到底是什么
2012/08/07 面试题
阿里巴巴Oracle DBA笔试题答案-备份恢复类
2013/11/20 面试题
介绍一下Java的事务处理
2012/12/07 面试题
会计系毕业个人自荐信格式
2013/09/23 职场文书
司机检讨书
2014/02/13 职场文书
化妆师职业生涯规划书
2014/02/16 职场文书
网络销售员岗位职责
2015/04/11 职场文书
奖学金主要事迹范文
2015/11/04 职场文书
《分数的意义》教学反思
2016/02/20 职场文书