手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >jQuery实现带动画效果的多级下拉菜单代码
jQuery实现带动画效果的多级下拉菜单代码
摘要:本文实例讲述了jQuery实现带动画效果的多级下拉菜单代码。分享给大家供大家参考。具体如下:这是一款基于jQuery实现的多级下拉菜单,带动...

本文实例讲述了jQuery实现带动画效果的多级下拉菜单代码。分享给大家供大家参考。具体如下:

这是一款基于jQuery实现的多级下拉菜单,带动画效果,所有的元素以ul li ul li ul li的循环格式嵌套 如果没有下级分类 就用li a结束嵌套,代码内不用toggle()的原因是为了在收缩菜单的时候同时也将该菜单的下级菜单以后的所有元素都隐藏。

运行效果截图如下:

jQuery实现带动画效果的多级下拉菜单代码1

在线演示地址如下:

http://demo.jb51.net/js/2015/jquery-animate-style-down-show-menu-codes/

具体代码如下:

<!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> <script language="javascript" type="text/javascript" src="jquery1.3.2.js"></script> <style type="text/css"> ul,li{ list-style:none; font-size:12px; line-height:20px; width:80px; margin:0; padding-left:6px; } .child{ display:none; } .nav a{ display:block; color:#5c84c1; padding-left:22px; } </style> <script language="javascript" type="text/javascript"> //说明 所有的元素以ul li ul li ul li的循环格式嵌套 如果没有下级分类 就用li a结束嵌套 $(document).ready(function(){ //$(".nav ul li").children("ul").hide(); $(".nav").find("li").not(":has(ul)").children("a").css({textDecoration:"none",color:"#333",background:"none"}) .click(function(){ $(this).get(0).location.href="'"+$(this).attr("href")+"'"; }); $(".nav").find("li:has(ul)").children("a").css({background:"url(images/statu_close.gif) no-repeat left top;"}) .click(function(){ if($(this).next("ul").is(":hidden")){ $(this).next("ul").slideDown("slow"); if($(this).parent("li").siblings("li").children("ul").is(":visible")){ $(this).parent("li").siblings("li").find("ul").slideUp("1000"); $(this).parent("li").siblings("li:has(ul)").children("a").css({background:"url(images/statu_close.gif) no-repeat left top;"}) .end().find("li:has(ul)").children("a").css({background:"url(images/statu_close.gif) no-repeat left top;"});} $(this).css({background:"url(images/statu_open.gif) no-repeat left top;"}); return false; }else{ $(this).next("ul").slideUp("normal"); //不用toggle()的原因是为了在收缩菜单的时候同时也将该菜单的下级菜单以后的所有元素都隐藏 $(this).css({background:"url(images/statu_close.gif) no-repeat left top;"}); $(this).next("ul").children("li").find("ul").fadeOut("normal"); $(this).next("ul").find("li:has(ul)").children("a").css({background:"url(images/statu_close.gif) no-repeat left top;"}); return false; } }); }); </script> </head> <body> <div> <ul> <li> <a href="#">一级菜单1</a> <ul> <li> <a href="#">二级菜单1</a> </li> <li> <a href="#">二级菜单1</a> <ul> <li> <a href="#">三级菜单1</a> </li> <li> <a href="#">三级菜单1</a> </li> </ul> </li> <li> <a href="#">二级菜单2</a> <ul> <li> <a href="#">三级菜单2</a> </li> <li> <a href="#">三级菜单2</a> <ul> <li> <a href="#">四级菜单</a> </li> <li> <a href="#">四级菜单1</a> </li> <li> <a href="#">四级菜单1</a> <ul> <li> <a href="#">五级菜单1</a> </li> <li> <a href="#">五级菜单1</a> </li> <li> <a href="#">五级菜单1</a> </li> </ul> </li> </ul> </li> </ul> </li> </ul> </li> <li> <a href="#">一级菜单2</a> <ul> <li> <a href="#">二级菜单1</a> </li> <li> <a href="#">二级菜单1</a> </li> </ul> </li> <li> <a href="#">一级菜单3</a> <ul> <li> <a href="#">二级菜单1</a> </li> <li> <a href="#">二级菜单1</a> </li> </ul> </li> <li> <a href="#">一级菜单4</a> </li> </ul> </div> </body> </html>

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

【jQuery实现带动画效果的多级下拉菜单代码】相关文章:

jQuery实现仿腾讯微博滑出效果报告每日天气的方法

些很实用且必用的小脚本代码

javascript实现图片跟随鼠标移动效果的方法

jQuery插件实现适用于移动端的地址选择器

JQuery实现动态添加删除评论的方法

基于jquery实现下拉框美化特效

jQuery实现延迟跳转的方法

jQuery实现在列表的首行添加数据

jQuery实现首页图片淡入淡出效果的方法

jQuery实现文本展开收缩特效

精品推荐
分类导航