`
sungang_1120
  • 浏览: 322458 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类

Jquery实现父菜单 与 子菜单的动态伸张效果(源码)

 
阅读更多
Jquery实现父菜单 与 子菜单的动态伸张效果

一、jsp代码:
<%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">

<title>My JSP 'test_Jquery01 .jsp' starting page</title>

<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">

<link rel="stylesheet" type="text/css" href="css/test_jquery.css">
<script type="text/javascript" src="js/jquery-1.8.3.js">
</script>
<script type="text/javascript" src="js/test_jquery02.js">
</script>

<script type="text/javascript">
</script>

</head>

<body>
<ul>
<li class="zhucaidan">
<a href="javascript:"><b>菜单1</b></a>
<ul>
<li>
<a href="javascript:"><b>子菜单11</b></a>
</li>
<li>
<a href="javascript:"><b>子菜单12</b></a>
</li>
</ul>
</li>
<li class="zhucaidan">
<a href="javascript:"><b>菜单2</b></a>
<ul>
<li>
<a href="javascript:"><b>子菜单21</b></a>
</li>
<li>
<a href="javascript:"><b>子菜单22</b></a>
</li>
</ul>
</li>
<li class="zhucaidan">
<a href="javascript:"><b>菜单3</b></a>
<ul>
<li>
<a href="javascript:"><b>子菜单31</b></a>
</li>
<li>
<a href="javascript:"><b>子菜单32</b></a>
</li>
</ul>
</li>
<li class="zhucaidan">
<a href="javascript:"><b>菜单4</b></a>
<ul>
<li>
<a href="javascript:"><b>子菜单41</b></a>
</li>
<li>
<a href="javascript:"><b>子菜单42</b></a>
</li>
</ul>
</li>
<li class="zhucaidan">
<a href="javascript:"><b>菜单5</b></a>
<ul>
<li>
<a href="javascript:"><b>子菜单51</b></a>
</li>
<li>
<a href="javascript:"><b>子菜单52</b></a>
</li>
</ul>
</li>
</ul>
<p></p>
<br />
<br />
<br />
<br />
<br />
<ul>
<li class="hzhucaidan">
<a href="javascript:"><b>菜单1</b></a>
<ul>
<li>
<a href="javascript:"><b>子菜单11</b></a>
</li>
<li>
<a href="javascript:x"><b>子菜单12</b></a>
</li>
</ul>
</li>
<li class="hzhucaidan">
<a href="javascript:"><b>菜单2</b></a>
<ul>
<li>
<a href="javascript:"><b>子菜单21</b></a>
</li>
<li>
<a href="javascript:"><b>子菜单22</b></a>
</li>
</ul>
</li>
<li class="hzhucaidan">
<a href="javascript:"><b>菜单3</b></a>
<ul>
<li>
<a href="javascript:"><b>子菜单31</b></a>
</li>
<li>
<a href="javascript:"><b>子菜单32</b></a>
</li>
</ul>
</li>
<li class="hzhucaidan">
<a href="javascript:"><b>菜单4</b></a>
<ul>
<li>
<a href="javascript:"><b>子菜单41</b></a>
</li>
<li>
<a href="javascript:"><b>子菜单42</b></a>
</li>
</ul>
</li>
<li class="hzhucaidan">
<a href="javascript:"><b>菜单5</b></a>
<ul>
<li>
<a href="javascript:"><b>子菜单51</b></a>
</li>
<li>
<a href="javascript:"><b>子菜单52</b></a>
</li>
</ul>
</li>
</ul>
</body>
</html>
二、css代码:
ul,li{
/*去掉ul li 的前面的圆点*/
list-style: none;
}
ul{
/*去掉ul 的缩进*/
padding: 0px;
margin: 0px;
}
.zhucaidan{
/*给主菜单添加背景色*/
background-image:url("../images/2.jpg");
/*去除上下的*/
background-repeat: repeat-x;
/*控制背景色的长度*/
width: 120px;
}
li{
/*把所有li的背景色改为灰色*/
background-color: gray;
}
a{
/*取消所有连接的下划线*/
text-decoration: none;
color: black;
/*缩进20像素*/
padding: 20px;
/*充满所在区域   块元素*/
/*display: block;
display: inline-table;
width: 120px;*/
padding-top: 3px;
padding-bottom: 3px;
}
.zhucaidan a{
/*把所有主菜单的字体颜色都变成白色*/
color: white;
/*给主菜单前面加一个小图片*/

background-image: url("../images/1.jpg");

background-repeat: no-repeat;

background-position: 3px center;
}
.zhucaidan li a{
/*把主菜单下面的li下面连接的字体改为黑色*/
color: black;
/*不让子菜单显示任何图片*/
background-image: none;
}
.zhucaidan ul{
/*隐藏所有的子菜单*/
display: none;
}





.hzhucaidan{
float: left;
}
.hzhucaidan{
/*给主菜单添加背景色*/
background-image:url("../images/2.jpg");
/*去除上下的*/
background-repeat: repeat-x;
/*控制背景色的长度*/
width: 120px;
}
.hzhucaidan a{
/*把所有主菜单的字体颜色都变成白色*/
color: white;
/*给主菜单前面加一个小图片*/

background-image: url("../images/1.jpg");
background-repeat: no-repeat;
background-position: 3px center;
}
.hzhucaidan li a{
/*把主菜单下面的li下面连接的字体改为黑色*/
color: black;
/*不让子菜单显示任何图片*/
background-image: none;
}
.hzhucaidan ul{
/*隐藏所有的子菜单*/
display: none;
}
三、js代码:
$(document).ready(function() {
//选择类下面的子a 用>
$(".zhucaidan > a").click(function(){
//找到主菜单对应的子菜单
var node = $(this).next("ul");
//if(node.css("display") == "none"){
//显示出来
//node.css("display","block");
//}else{
//隐藏起来
//node.css("display","none");
//}*/

//第二种
if(node.css("display") == "none"){
node.show();
changes(node);
}else{
node.hide();
changes(node);
}


//第三种   会自动判断是显示  还是隐藏着
//node.toggle();

//第四种
//node.sildeDown();
//node.sildeUp();

//第五种
//node.sildeToggle();
});


$(".hzhucaidan > a").click(function(){
var node2 = $(this).next("ul");
if(node2.css("display") == "none"){
node2.show();
changes(node2);
}else{
node2.hide();
changes(node2);
}
});
});
//点击下拉出现时  前面的小图标会默认的改变
function changes(mailNode){
if(mailNode){
if(mailNode.css("background-image").indexOf("images/1.jpg")){
mailNode.css("background-image","url('images/2.jpg')");
}else{
mailNode.css("background-image","url('images/1.jpg')");
}
}
}
  • 大小: 28.6 KB
分享到:
评论

相关推荐

    JQuery实现动态滚动菜单效果

    总的来说,使用JQuery实现动态滚动菜单效果需要对DOM操作、事件处理、CSS选择器和动画有深入理解。通过结合以上知识点,我们可以创建一个既美观又实用的动态滚动菜单,提升网站的整体用户体验。

    jquery下拉全屏导航菜单(源码)

    在“jquery下拉全屏导航菜单(源码)”项目中,jQuery被用于实现动态效果和交互功能,使得导航菜单更加生动和易于使用。 下拉导航菜单通常包含一个主菜单项,当用户悬停或点击时,会展示出子菜单项。这种设计节省...

    Jquery实现下拉菜单

    在这个“Jquery实现下拉菜单”的主题中,我们将深入探讨如何在Visual Studio 2008(使用.NET Framework 3.5)环境下,利用jQuery创建功能丰富的下拉菜单,并实现点击当前菜单项时关闭其他打开的菜单。以下是关于这个...

    jquery实现下拉菜单

    jQuery是一个轻量级、功能强大的JavaScript库,它极大地简化了JavaScript编程,使得实现动态交互效果如下拉菜单变得简单易行。本篇文章将详细探讨如何使用jQuery来创建一个功能完备的下拉菜单。 首先,我们需要了解...

    jQuery实现下拉菜单.

    jQuery,作为一个轻量级的JavaScript库,因其简洁的API和丰富的功能,常被用来实现动态效果,包括下拉菜单的创建。本教程将详细讲解如何使用jQuery来实现一个下拉菜单,以及相关的注意事项。 首先,我们需要了解...

    jquery各种菜单插件源码与示例

    本资源"jquery各种菜单插件源码与示例"提供了丰富的菜单实现方式,帮助开发者更好地理解和应用jQuery来创建功能丰富的交互式网站菜单。 一、jQuery菜单插件的基本原理 jQuery菜单插件通常是通过CSS样式和JavaScript...

    jQuery实现的动态伸缩导航菜单实例

    在介绍jQuery实现的动态伸缩导航菜单实例中,我们首先需要了解jQuery这个前端开发常用的JavaScript库。jQuery极大的简化了JavaScript编程,尤其在处理文档结构、事件处理、动画效果以及Ajax交互等方面提供了简便的...

    jquery实现多级导航菜单

    jQuery作为一个强大的JavaScript库,提供了丰富的功能来创建交互式、动态的多级导航菜单,包括滑动效果。下面我们将深入探讨如何使用jQuery实现这种效果。 1. **HTML结构**: 多级导航菜单通常由`&lt;ul&gt;`和`&lt;li&gt;`...

    JQuery实现菜单折叠效果源码 JQueryAchieveEffectMenu.rar

    JQuery实现菜单折叠效果源码 源码描述: 一、源码特点 1、jQuery实现菜单折叠效果,可实现菜单折叠,欢迎下载 二、注意事项 1、开发环境为Visual Studio 2013,使用.net 4.0开发。

    jQuery实现菜单叠加效果代码

    jQuery实现菜单叠加效果代码 包含html css javascript源代码

    jquery动态下拉菜单.zip

    jQuery 是一个轻量级的 JavaScript 库,以其简洁的API和强大的功能深受开发者喜爱,用于实现动态下拉菜单非常方便。本压缩包“jquery动态下拉菜单.zip”包含了使用 jQuery 创建动态下拉菜单的相关资源。 “说明.htm...

    jQuery实现树形菜单

    4. **优化用户体验**:为了提高用户体验,我们可以添加一些额外的特性,如展开/关闭所有子菜单,或者防止点击子菜单时触发父菜单的点击事件。这可以通过增加更多的jQuery代码来实现。 5. **响应式设计**:对于移动...

    jquery实现ul_li菜单展开收起效果

    `jQuery`作为一种强大的JavaScript库,提供了简洁的API,使得实现`ul_li`菜单的展开收起效果变得非常简便。这个效果常用于创建多级导航菜单,通过点击某个父级菜单项来展开或收起其子菜单项,提高用户体验。 首先,...

    jQuery实现23种Bootstrap导航菜单布局特效源码.zip

    该插件集成了23种Bootstrap导航菜单效果,有下拉菜单,大型菜单,侧边栏菜单,购物车菜单等,可以满足大部分网页导航菜单设计的需求。本代码适用浏览器:搜狗、360、FireFox、Chrome、Safari、Opera、傲游、世界之窗...

    jQuery实现折叠菜单 非常简单

    在本文中,我们将深入探讨如何使用jQuery来实现一个折叠菜单,这是一个非常常见的功能,尤其在网页设计和开发中。jQuery库以其简洁的API和强大的功能,使得动态交互变得更加容易,而折叠菜单就是其中之一。 首先,...

    jquery实现经典菜单

    可以通过设置 `display` 属性控制菜单项的显示与隐藏,`position` 属性进行定位,以及 `hover` 伪类实现鼠标悬停效果。例如: ```css #menu { list-style-type: none; margin: 0; padding: 0; } #menu li { ...

    jquery实现横向伸缩菜单导航

    本教程将深入探讨如何使用jQuery实现一个横向伸缩菜单导航,当鼠标悬停在导航项上时,其子菜单会向左滑动展开。 首先,我们需要了解jQuery的基本用法。jQuery是一个流行的JavaScript库,它简化了DOM操作、事件处理...

    jquery竖直手风琴菜单收缩展示下拉菜单

    在网页设计中,jQuery竖直手风琴菜单是一种常见的交互元素,它允许用户通过点击菜单项来展开或收缩子菜单,以节省空间并提供良好的用户体验。这种效果在内容丰富的网站中特别受欢迎,因为它使得导航更加直观和高效。...

    JQuery实现动态菜单

    通过以上步骤,我们可以利用JQuery实现动态菜单的功能,包括创建、更新、删除菜单项,动态加载数据,以及实现响应式和动画效果。JQuery的灵活性和易用性使得这些操作变得简单高效。在实际项目中,结合CSS和Bootstrap...

Global site tag (gtag.js) - Google Analytics