三级下拉菜单案例作业

Original 2019-02-12 12:34:33 145
abstract:通过ul进行静态页面的导航菜单及子菜单的布局,利用jQuery的hide() mouseenter mouseover mouseleave find() slideDown slideUp等方法实现下拉菜单的子菜单隐藏、显示、通过鼠标移入、移出事件触发子菜单的显示与隐藏。<!DOCTYPE html> <html lang="en">

通过ul进行静态页面的导航菜单及子菜单的布局,利用jQuery的hide() mouseenter mouseover mouseleave find() slideDown slideUp等方法实现下拉菜单的子菜单隐藏、显示、通过鼠标移入、移出事件触发子菜单的显示与隐藏。

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>三级子菜单作业</title>
<script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script>
<style>
* {
padding: 0;
margin: 0;
}
ul li {
list-style: none;
width: 100px;
height: 40px;
line-height: 40px;
text-align: center;
float: left;
border-right: 1px solid rgb(180, 168, 168);
cursor: pointer;
}
.sub2 li {
width: 100px;
}
a {
color: #fff;
text-decoration: none;
}
.c {
margin: 0 auto;
}
.menu {
height: 40px;
background: rgb(197, 102, 102);
color: #444;
}
.menu .cent {
width: 960px;
height: 40px;
}
.subpannel {
position: relative;
background: pink;
height: 120px;
}

.subpannel li {
border: none;
}

.subpannel li:hover {
background: #ccc;
}

.sub3 {
position: relative;
top: -40px;
left: 100px;
height: 125px;
}

.sub3 li {
width: 100px;
background: indianred;
}

.sub3 li:hover {
color: #fff;
background: rgb(43, 25, 25);
}
</style>
</head>

<body>
<div class="menu">
<div class="c cent">
<!-- 一级菜单 -->
<ul class="sub">
<li><a href="">网站首页</a></li>
<li><a href="">企业荣誉</a></li>
<li><a href="">公司概况</a></li>
<li><a href="">公司文化</a></li>
<li><a href="">产品展示</a>
<!-- 二级菜单 -->
<ul class='subpannel'>
<li>民用装备</li>
<li class='sub2'>军用设备
<!-- 三级菜单 -->
<ul class='sub3'>
<li>军用电台</li>
<li>坦克</li>
<li>火箭车</li>
</ul>
</li>
<li>企业装备</li>
</ul>
</li>
<li> <a href="">在线论坛</a></li>
<li><a href="">意见反馈</a></li>
<li><a href="">联系方式</a></li>
</ul>
</div>
</div>
<script>
$(document).ready(function () {
//设置所有子菜单隐藏
$('.subpannel').hide();
$('.sub3').hide();
// 通过Mousemove /mouseover/mouseenter 触发鼠标移入事件
$('.sub>li').mousemove(function () {
// 利用find()找到子菜单元素通过slideDown()显示子菜单
$(this).find('.subpannel').slideDown(500);
})
// 通过Mouseleave /mouseout 触发鼠标移出事件

$('.sub>li').mouseleave(function () {
// 利用find()找到子菜单元素通过slideUp()隐藏子菜单

$(this).find('.subpannel').slideUp(500);
})
$('.subpannel>li').mouseover(function () {

$(this).find('.sub3').slideDown(500);

})
$('.subpannel>li').mouseleave(function () {
$(this).find('.sub3').slideUp(500);
})

})
</script>
</body>
</html>


Correcting teacher:天蓬老师Correction time:2019-02-12 12:40:35
Teacher's summary:多级菜单,应用很广的, 不仅可以用到顶部主导航, 侧边导航也很常用, 例如一些商城左侧的商品列表

Release Notes

Popular Entries