基于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 相关文章推荐
JQuery 网站换肤功能实现代码
Nov 02 Javascript
JavaScript Scoping and Hoisting 翻译
Jul 03 Javascript
Javascript 函数parseInt()转换时出现bug问题
May 20 Javascript
详谈Angular 2+ 的表单(一)之模板驱动型表单
Apr 25 Javascript
详谈javascript精度问题与调整
Jul 08 Javascript
js使用原型对象(prototype)需要注意的地方
Aug 28 Javascript
基于jstree使用AJAX请求获取数据形成树
Aug 29 Javascript
利用node实现一个批量重命名文件的函数
Dec 21 Javascript
CKEditor4配置与开发详细中文说明文档
Oct 08 Javascript
vue 使用vue-i18n做全局中英文切换的方法
Oct 29 Javascript
Node.js Buffer模块功能及常用方法实例分析
Jan 05 Javascript
vue实现移动端H5数字键盘组件使用详解
Aug 25 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
收音机鉴频器对声音的影响和频偏分析
2021/03/02 无线电
PHP出错界面
2006/10/09 PHP
CI框架源码解读之URI.php中_fetch_uri_string()函数用法分析
2016/05/18 PHP
PHPStorm 2020.1 调试 Nodejs的多种方法详解
2020/09/17 NodeJs
JQuery UI皮肤定制
2009/07/27 Javascript
JavaScript高级程序设计(第3版)学习笔记3 js简单数据类型
2012/10/11 Javascript
jQuery使用ajaxSubmit()提交表单示例
2014/04/04 Javascript
基于JS代码实现导航条弹出式悬浮菜单
2016/06/17 Javascript
微信小程序 数据封装,参数传值等经验分享
2017/01/09 Javascript
基于jQuery实现简单人工智能聊天室
2017/02/10 Javascript
vue分类筛选filter方法简单实例
2017/03/30 Javascript
React中的refs的使用教程
2018/02/13 Javascript
React事件处理的机制及原理
2018/12/03 Javascript
基于JavaScript伪随机正态分布代码实例
2019/11/07 Javascript
50行代码实现贪吃蛇(具体思路及代码)
2013/04/27 Python
在Python的gevent框架下执行异步的Solr查询的教程
2015/04/16 Python
Python中处理字符串之isalpha()方法的使用
2015/05/18 Python
菜鸟使用python实现正则检测密码合法性
2016/01/05 Python
浅谈python装饰器探究与参数的领取
2017/12/01 Python
python http接口自动化脚本详解
2018/01/02 Python
Python基于ThreadingTCPServer创建多线程代理的方法示例
2018/01/11 Python
Python使用Pandas读写Excel实例解析
2019/11/19 Python
通过 Python 和 OpenCV 实现目标数量监控
2020/01/05 Python
Python下使用Trackbar实现绘图板
2020/10/27 Python
如何用python 操作zookeeper
2020/12/28 Python
联想马亚西亚官方网站:Lenovo Malaysia
2018/09/19 全球购物
旅游管理专业学生求职信
2013/09/28 职场文书
工伤赔偿协议书范本
2014/04/15 职场文书
党员四风剖析材料
2014/08/27 职场文书
银行柜员与客户起冲突检讨书
2014/09/27 职场文书
领导干部群众路线个人对照检查材料思想汇报
2014/09/30 职场文书
2015秋季幼儿园开学通知
2015/07/16 职场文书
80后创业总结的9条职场用人思想,记得收藏
2019/08/13 职场文书
JS Canvas接口和动画效果大全
2021/04/29 Javascript
你真的了解PHP中的引用符号(&)吗
2021/05/12 PHP
MySQL中order by的使用详情
2021/11/17 MySQL