jQuery实现的纵向下拉菜单实例详解【附demo源码下载】


Posted in Javascript onJuly 09, 2016

本文实例讲述了jQuery实现的纵向下拉菜单。分享给大家供大家参考,具体如下:

当我们浏览网页和使用word编辑一下文字的时候,我们都能看见横向下拉的身影,有了横向菜单,我们能对整个界面进行更好的布局,达到我们想要的效果,那么这些横向菜单式如何用代码实现的,当我们浏览或使用的时候她又是如何呈现在我们面前的,学习了JQuery之后,小编渐渐看到她美丽的容颜,接下来,小编主要讲解如何通过jquery实现纵向下拉菜单。

第一步,我们来编写html的代码,如下所示:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
  <title>JQuery实战-菜单效果</title>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  <link type="text/css" rel="stylesheet" href="css/menu.css" />
  <script type="text/javascript" src="js/jquery.js"></script>
  <script type="text/javascript" src="js/menu.js"></script>
 </head>
 <body>
   <ul>
   <li class="main">
    <a href="#">菜单项1</a>
   <ul>
    <li>
     <a href="#">子菜单项11</a>
    </li>
    <li>
     <a href="#">子菜单项12</a>
    </li>
   </ul>
   </li>
   <li class="main">
   <a href="#">菜单项2</a>
   <ul>
    <li>
     <a href="#">子菜单项21</a>
    </li>
    <li>
     <a href="#">子菜单项22</a>
    </li>
   </ul>
   </li>
   <li class="main">
   <a href="#">菜单项3</a>
   <ul>
    <li>
     <a href="#">子菜单项31</a>
    </li>
    <li>
     <a href="#">子菜单项32</a>
    </li>
   </ul>
   </li>
   </ul>
 </body>
</html>

我们来看一下运行效果:

jQuery实现的纵向下拉菜单实例详解【附demo源码下载】

上面的实现效果已经初步具有了纵向菜单的模型,但是似乎有不完美的地方,主菜单的前面有黑色的小圆点,子菜单前面有白色的小圆点,也没有立体的效果,不用担心css可以帮助我们解决上述的问题,接着,编写css的代码,如下所示:

ul,li{
 /*清除ul和li上默认的小圆点*/
 list-style:none;
}
ul{
 /*清除子菜单的缩进值*/
 padding:0;
 margin:0;
}
.main{
 background-image:url(../images/title.gif);
 background-repeat:repeat-x;
 width:120px;
}
li{
 background-color:#EEEEEE;
}
a{
 /*取消所有的下划线*/
 text-decoration:none;
 padding-left:20px;
 display:block;
 display:inline-block;
 width:100px;
 padding-top:3px;
 padding-bottom:3px;
}
.main a{
 color:white;
 background-image:url(../images/collapsed.gif);
 background-repeat:no-repeat;
 background-position:3px center;
}
.main li a{
  color:black;
  background-image:none;
}
.main ul{
 display:none;
}

添加了css的代码,在显示的时候会有怎么样的惊喜带给我们呢?

jQuery实现的纵向下拉菜单实例详解【附demo源码下载】

上图的显示效果已经就更为接近我们的想好实现的效果了,但是这个还是不可以进行点击的,所以我们还需要编写js的代码,相应的,在js中我们也要建立两个文件,一个jquery一个menu,鉴于jquery的代码较多,所以小编已经上传相关资源,有需要的小伙伴可以点击文末链接下载,接着,我们来编写menu的代码,来给整理页面添加行为能力,代码如下:

$(document).ready(function(){
 //页面中的DOM已经装载完成时,执行的代码
 $(".main > a").click(function(){
  //找到主要菜单项对应的子菜单项
  var ulNode =$(this).next("ul");
  /*
  if(ulNode.css("display")=="none")
  {
   ulNode.css("display","block");
  }else{
   ulNode.css("display","none");
  }
  */
  /*菜单出现的动画效果*/
  ulNode.show("slow");//normal fast
  //unlNode.hide();
  //ulNode.toggle();
  //
  //ulNode.slideDown("slow");
  //ulNode.slideUP;
  ulNode.sildeToggle();
 });
})

添加了js的代码,现在实现的效果是不是和我们想象的一样呢,如下图所示:

jQuery实现的纵向下拉菜单实例详解【附demo源码下载】

以上就是小编实现的纵向下拉菜单的全部过程,既然可以实现纵向下拉菜单,那么横向下拉菜单又该如何实现呢,更纵向菜单的实现过程有哪些不一样的地方nie,这个过程才是我们成长的过程,在这里横向菜单小编就不一一介绍了,完整实例代码点击此处本站下载。有需要的小伙伴可以down下来,自己研究。

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

Javascript 相关文章推荐
一段批量给页面上的控件赋值js
Jun 19 Javascript
JS.GetAllChild(element,deep,condition)使用介绍
Sep 21 Javascript
JavaScript日期时间格式化函数分享
May 05 Javascript
WordPress中利用AJAX异步获取评论用户头像的方法
Jan 08 Javascript
基于JavaScript的操作系统你听说过吗?
Jan 28 Javascript
bootstrap-wysiwyg结合ajax实现图片上传实时刷新功能
May 27 Javascript
Angular 应用技巧总结
Sep 14 Javascript
jquery中用jsonp实现搜索框功能
Oct 18 Javascript
Radio 单选JS动态添加的选项onchange事件无效的解决方法
Dec 12 Javascript
react 实现页面代码分割、按需加载的方法
Apr 03 Javascript
vue+eslint+vscode配置教程
Aug 09 Javascript
js实现选项卡效果
Mar 07 Javascript
EasyUI Pagination 分页的两种做法小结
Jul 09 #Javascript
jQuery实现可以编辑的表格实例详解【附demo源码下载】
Jul 09 #Javascript
JavaScript基础知识点归纳(推荐)
Jul 09 #Javascript
jQuery EasyUI学习教程之datagrid点击列表头排序
Jul 09 #Javascript
jQuery简单入门示例之用户校验demo示例
Jul 09 #Javascript
jQuery Easyui学习教程之实现datagrid在没有数据时显示相关提示内容
Jul 09 #Javascript
JQuery EasyUI学习教程之datagrid 添加、修改、删除操作
Jul 09 #Javascript
You might like
Protoss兵种介绍
2020/03/14 星际争霸
PHP的中问验证码
2006/11/25 PHP
PHP autoload与spl_autoload自动加载机制的深入理解
2013/06/05 PHP
PHP7标量类型declare用法实例分析
2016/09/26 PHP
对JavaScript的eval()中使用函数的进一步讨论
2008/07/26 Javascript
jquery 动态创建元素的方式介绍及应用
2013/04/21 Javascript
jQuery+JSON+jPlayer实现QQ空间音乐查询功能示例
2013/06/17 Javascript
JS注释所产生的bug 即使注释也会执行
2013/11/19 Javascript
JavaScript实现多维数组的方法
2013/11/20 Javascript
jquery创建表格(自动增加表格)代码分享
2013/12/25 Javascript
从数据库读取数据后将其输出成html标签的三种方法
2014/10/13 Javascript
jquery实现增加删除行的方法
2015/02/03 Javascript
简述AngularJS的控制器的使用
2015/06/16 Javascript
前端性能优化及技巧
2016/05/06 Javascript
jQuery树形控件zTree使用小结
2016/08/02 Javascript
node.js中fs文件系统目录操作与文件信息操作
2018/02/24 Javascript
详解如何解决Vue和vue-template-compiler版本之间的问题
2018/09/17 Javascript
JavaScript创建对象方式总结【工厂模式、构造函数模式、原型模式等】
2018/12/19 Javascript
vue router带参数页面刷新或回退参数消失的解决方法
2019/02/27 Javascript
JavaScript面向对象核心知识与概念归纳整理
2020/05/09 Javascript
[06:25]DOTA2英雄梦之声_第17期_大地之灵
2014/06/20 DOTA
python操作ie登陆土豆网的方法
2015/05/09 Python
pandas实现选取特定索引的行
2018/04/20 Python
在VS2017中用C#调用python脚本的实现
2019/07/31 Python
使用Keras画神经网络准确性图教程
2020/06/15 Python
Python+Kepler.gl实现时间轮播地图过程解析
2020/07/20 Python
PyCharm 2020.2 安装详细教程
2020/09/25 Python
Orlebar Brown官网:设计师泳裤和泳装
2020/12/08 全球购物
公司同意接收函
2014/01/13 职场文书
小学教师自我鉴定范文
2014/03/20 职场文书
活动总结模板
2014/05/09 职场文书
药品营销专业毕业生自荐信
2014/07/02 职场文书
房地产置业顾问岗位职责
2015/04/11 职场文书
大国崛起英国观后感
2015/06/02 职场文书
解析原生JS getComputedStyle
2021/05/25 Javascript
mysql中关键词exists的用法实例详解
2022/06/10 MySQL