基于jquery实现的树形菜单效果代码


Posted in Javascript onSeptember 06, 2015

本文实例讲述了基于jquery实现的树形菜单效果代码。分享给大家供大家参考。具体如下:

这是一款基于jquery实现的树形菜单代码,点击菜单项可以向下滑出对应的二级菜单,效果流畅自然。

先来看看运行效果截图:

基于jquery实现的树形菜单效果代码

在线演示地址如下:

具体代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>jquery的树形菜单代码 </title>
<style>
body { font-family:"宋体"; font-size: 12px; line-height: 1.5em; color:#7FB0C8; padding:0; margin:0; background: #336699;}
ul,ol,li,dl,dt,dd { margin:0; padding:0; list-style-type:none;}
h1,h2,h3,form,input,iframe,span { margin:0; padding:0;} 
a { color:#7FB0C8;}
a:link {color: #7FB0C8; TEXT-DECORATION: none;}
a:visited {color: #7FB0C8; TEXT-DECORATION: none;}
a:hover {color: #fff; TEXT-DECORATION: none;}
.white { color:#fff;}
.white a:link {color: #fff; TEXT-DECORATION: none;}
.white a:visited {color: #fff; TEXT-DECORATION: none;}
.white a:hover {color: #73E1F5; TEXT-DECORATION: none;}
/* 树形菜单开始 */
.close { float:right; clear:right; font-size:12px; font-weight:normal; cursor:pointer; padding-right:10px;}
.title { font-size:14px; color:#fff; margin-bottom:10px; padding-left:5px; width:290px;}
.menu { width:290px; height:330px; overflow-y:auto; overflow-x:hidden; margin-bottom:10px;}
.menu { SCROLLBAR-FACE-COLOR: #002537; SCROLLBAR-HIGHLIGHT-COLOR: #002537; SCROLLBAR-SHADOW-COLOR: #0E6893; SCROLLBAR-3DLIGHT-COLOR: #0E6893; SCROLLBAR-ARROW-COLOR: #fff; SCROLLBAR-TRACK-COLOR: #053d58;SCROLLBAR-DARKSHADOW-COLOR: #002537; SCROLLBAR-BASE-COLOR: #01152a;}
.l1 { background:#000; font-size:13px; padding:5px 0 0 30px; height:20px; margin-bottom:5px; cursor:pointer;}
.slist { margin:0 0 5px 0; display:none;}
.l2 { padding:0 0 0 35px; font-size:13px;}
.l2 a { padding:6px 0 0 5px; width:230px; height:21px; display:block;} 
.currentl2 a,.l2 a:hover { background:#1E5A82; color:#fff;}
.sslist { background:#156890; width:235px; overflow:hidden; margin:0 0 5px 35px; display:none;}
.l3 a { padding:6px 0 0 5px; width:230px; height:20px; display:block;} 
.currentl3 a,.l3 a:hover { color:#fff; font-weight:bold;}
</style>
<script type="text/javascript" src="jquery1.3.2.js"></script>
<script>
// 树状菜单
$(document).ready(function(){
 $(".l1").toggle(function(){
  $(".slist").animate({height: 'toggle', opacity: 'hide'}, "slow");
 $(this).next(".slist").animate({height: 'toggle', opacity: 'toggle'}, "slow");
 },function(){
  $(".slist").animate({height: 'toggle', opacity: 'hide'}, "slow");
   $(this).next(".slist").animate({height: 'toggle', opacity: 'toggle'}, "slow");
 });
 $(".l2").toggle(function(){
 $(this).next(".sslist").animate({height: 'toggle', opacity: 'toggle'}, "slow");
 },function(){
   $(this).next(".sslist").animate({height: 'toggle', opacity: 'toggle'}, "slow");
 });
 $(".l2").click(function(){
 $(".l3").removeClass("currentl3");
 $(".l2").removeClass("currentl2");
 $(this).addClass("currentl2");
 }); 
 $(".l3").click(function(){
 $(".l3").removeClass("currentl3");   
 $(this).addClass("currentl3");
 }); 
 $(".close").toggle(function(){
 $(".slist").animate({height: 'toggle', opacity: 'hide'}, "fast"); 
 $(".sslist").animate({height: 'toggle', opacity: 'hide'}, "fast"); 
  },function(){
 $(".slist").animate({height: 'toggle', opacity: 'show'}, "fast"); 
 $(".sslist").animate({height: 'toggle', opacity: 'show'}, "fast"); 
 }); 
});
</script>
</head>
<body>
<h1 class="title"><span class="close">全部收起/展开</span>树形菜单</h1>
<div class="menu">
 <h1 class="l1">一级菜单1</h1>
 <div class="slist">
 <h2 class="l2"><a href="javascript:function()">二级菜单1</a></h2>
 <ul class="sslist">
 <li class="l3"><a href="javascript:function()">·三级菜单1</a></li>
 <li class="l3"><a href="javascript:function()">·三级菜单1</a></li>
 <li class="l3"><a href="javascript:function()">·三级菜单1</a></li>
 <li class="l3"><a href="javascript:function()">·三级菜单1</a></li>
 </ul>
 <h2 class="l2"><a href="javascript:function()">二级菜单2</a></h2>
 <ul class="sslist">
 <li class="l3"><a href="javascript:function()">·三级菜单2</a></li>
 <li class="l3"><a href="javascript:function()">·三级菜单2</a></li>
 <li class="l3"><a href="javascript:function()">·三级菜单2</a></li>
 <li class="l3"><a href="javascript:function()">·三级菜单2</a></li>
 </ul>
 <h2 class="l2"><a href="javascript:function()">二级菜单3</a></h2>
 </div>
 <h1 class="l1">一级菜单2</h1>
 <div class="slist">
 <h2 class="l2"><a href="javascript:function()">二级菜单2</a></h2>
 <h2 class="l2"><a href="javascript:function()">二级菜单2</a></h2>
 <h2 class="l2"><a href="javascript:function()">二级菜单2</a></h2>
 </div>
 <h1 class="l1">一级菜单3</h1>
 <div class="slist">
 <h2 class="l2"><a href="javascript:function()">二级菜单3</a></h2>
 <h2 class="l2"><a href="javascript:function()">二级菜单3</a></h2>
 <h2 class="l2"><a href="javascript:function()">二级菜单3</a></h2>
 </div>
</div>
</body>
</html>

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

Javascript 相关文章推荐
flash javascript之间的通讯方法小结
Dec 20 Javascript
jQuery 树形结构的选择器
Feb 15 Javascript
jquery获取div距离窗口和父级dv的距离示例
Oct 10 Javascript
使用Node.js为其他程序编写扩展的基本方法
Jun 23 Javascript
jquery实现叠层3D文字特效代码分享
Aug 21 Javascript
jQuery仿360导航页图标拖动排序效果代码分享
Aug 24 Javascript
web前端开发JQuery常用实例代码片段(50个)
Aug 28 Javascript
完美解决jQuery的hover事件在IE中不停闪动的问题
Feb 10 Javascript
ReactNative之键盘Keyboard的弹出与消失示例
Jul 11 Javascript
php 解压zip压缩包内容到指定目录的实例
Jan 23 Javascript
解决Vue开发中对话框被遮罩层挡住的问题
Nov 26 Javascript
ElementUI Tag组件实现多标签生成的方法示例
Jul 08 Javascript
jQuery.extend 函数及用法详细
Sep 06 #Javascript
jquery动态导航插件dynamicNav用法实例分析
Sep 06 #Javascript
jquery实现可自动收缩的TAB网页选项卡代码
Sep 06 #Javascript
jquery实现初次打开有动画效果的网页TAB切换代码
Sep 06 #Javascript
js实现简洁的TAB滑动门效果代码
Sep 06 #Javascript
js实现左侧网页tab滑动门效果代码
Sep 06 #Javascript
浅谈javascript函数式编程
Sep 06 #Javascript
You might like
基于PHP array数组的教程详解
2013/06/05 PHP
php.ini中date.timezone设置详解
2016/11/20 PHP
Javascript 读书笔记索引贴
2010/01/11 Javascript
JQuery-tableDnD 拖拽的基本使用介绍
2013/07/04 Javascript
jquery ajax 简单范例(界面+后台)
2013/11/19 Javascript
JS判断两个时间大小的示例代码
2014/01/28 Javascript
JavaScript中的变量作用域介绍
2014/12/31 Javascript
js实现TAB切换对应不同颜色的代码
2015/08/31 Javascript
JavaScript为事件句柄绑定监听函数实例详解
2015/12/15 Javascript
项目实践一图片上传之form表单还是base64前端图片压缩(前端图片压缩)
2016/07/28 Javascript
vuejs绑定class和style样式
2017/04/11 Javascript
Angular中$state.go页面跳转并传递参数的方法
2017/05/09 Javascript
Kindeditor单独调用多图上传实例
2017/07/31 Javascript
jQuery实现新闻播报滚动及淡入淡出效果示例
2018/03/23 jQuery
layui实现文件或图片上传记录
2018/08/28 Javascript
详解小程序不同页面之间通讯的解决方案
2018/11/23 Javascript
基于jquery实现彩色投票进度条代码解析
2020/08/26 jQuery
vue-cli —— 如何局部修改Element样式
2020/10/22 Javascript
Python itertools模块详解
2015/05/09 Python
Python 内置函数complex详解
2016/10/23 Python
python SMTP实现发送带附件电子邮件
2018/05/22 Python
详解Python字典小结
2018/10/20 Python
浅谈python的输入输出,注释,基本数据类型
2019/04/02 Python
python内存监控工具memory_profiler和guppy的用法详解
2019/07/29 Python
flask框架自定义过滤器示例【markdown文件读取和展示功能】
2019/11/08 Python
Python调用百度OCR实现图片文字识别的示例代码
2020/07/17 Python
春节联欢会策划方案
2014/05/16 职场文书
报考公务员诚信承诺书
2014/08/29 职场文书
司机工作自我鉴定
2014/09/19 职场文书
房租涨价通知
2015/04/23 职场文书
社区敬老月活动总结
2015/05/07 职场文书
公司团队口号霸气押韵
2015/12/24 职场文书
教你如何使用Python实现二叉树结构及三种遍历
2021/06/18 Python
JavaScript实例 ODO List分析
2022/01/22 Javascript
Redis实现主从复制方式(Master&Slave)
2022/06/21 Redis
CSS 鼠标选中文字后改变背景色的实现代码
2023/05/21 HTML / CSS