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 相关文章推荐
javascript 特殊字符串
Feb 25 Javascript
基于jquery的图片幻灯展示源码
Jul 15 Javascript
JS数字抽奖游戏实现方法
May 04 Javascript
JS+CSS实现简单滑动门(滑动菜单)效果
Sep 19 Javascript
简单实现JavaScript图片切换效果
Nov 28 Javascript
jquery的父、子、兄弟节点查找,节点的子节点循环方法
Dec 07 Javascript
JS正则表达式修饰符中multiline(/m)用法分析
Dec 27 Javascript
js实现日历与定时器
Feb 22 Javascript
基于js原生和ajax的get和post方法以及jsonp的原生写法实例
Oct 16 Javascript
Vue中v-show添加表达式的问题(判断是否显示)
Mar 26 Javascript
Vue实现动态添加或者删除对象和对象数组的操作方法
Sep 21 Javascript
详解Node.js使用token进行认证的简单示例
May 25 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
一些操作和快捷键的理解和讨论
2020/03/04 星际争霸
全国FM电台频率大全 - 10 江苏省
2020/03/11 无线电
ThinkPHP的RBAC(基于角色权限控制)深入解析
2013/06/17 PHP
采用header定义为文件然后readfile下载(隐藏下载地址)
2014/01/31 PHP
Docker配置PHP开发环境教程
2016/12/21 PHP
php实现获取近几日、月时间示例
2019/07/06 PHP
js获取div高度的代码
2008/08/09 Javascript
仿迅雷焦点广告效果(JQuery版)
2008/11/19 Javascript
仿校内登陆框,精美,给那些很厉害但是没有设计天才的程序员
2008/11/24 Javascript
jQuery Ajax之load()方法
2009/10/12 Javascript
GreyBox技术总结(转)
2010/11/23 Javascript
JS正则中的RegExp对象对象
2012/11/07 Javascript
JS.GetAllChild(element,deep,condition)使用介绍
2013/09/21 Javascript
node.js中的http.response.setHeader方法使用说明
2014/12/14 Javascript
JS中的==运算: [''] == false —&gt;true
2016/07/24 Javascript
node.js express安装及示例网站搭建方法(分享)
2016/08/22 Javascript
JS获取年月日时分秒的方法分析
2016/11/28 Javascript
AngularJs中 ng-repeat指令中实现含有自定义指令的动态html的方法
2017/01/19 Javascript
在element-ui的el-tree组件中用render函数生成el-button的实例代码
2018/11/05 Javascript
JS实现的全选、全不选及反选功能【案例】
2019/02/19 Javascript
微信小程序 bindtap 传参的实例代码
2020/02/21 Javascript
在VUE中使用lodash的debounce和throttle操作
2020/11/09 Javascript
vue3.0 自适应不同分辨率电脑的操作
2021/02/06 Vue.js
python简单实现基于SSL的IRC bot实例
2015/06/15 Python
利用python获取Ping结果示例代码
2017/07/06 Python
python pandas模块基础学习详解
2019/07/03 Python
html5使用window.postMessage进行跨域实现数据交互的一次实战
2021/02/24 HTML / CSS
匈牙利墨盒和碳粉购买网站:CDRmarket
2018/04/14 全球购物
阿拉伯时尚购物网站:Nisnass
2021/02/07 全球购物
医学专业毕业生推荐信
2013/11/14 职场文书
2015年班组工作总结
2015/04/20 职场文书
2015年村级财务管理制度
2015/08/04 职场文书
《静夜思》教学反思
2016/02/17 职场文书
pytorch 如何使用batch训练lstm网络
2021/05/28 Python
聊聊SpringBoot自动装配的魔力
2021/11/17 Java/Android
Python内置数据类型中的集合详解
2022/03/18 Python