以下是一个简单的 JavaScript 二级导航菜单的源码示例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>二级导航菜单</title>
<style>
* {
margin: 0;
padding: 0;
list-style: none;
}
.nav {
display: flex;
background-color: #333;
}
.nav>li {
position: relative;
}
.nav>li>a {
display: block;
padding: 10px 20px;
color: #fff;
text-decoration: none;
}
.nav>li>a:hover {
background-color: #555;
}
.sub-menu {
display: none;
position: absolute;
top: 100%;
left: 0;
background-color: #333;
min-width: 150px;
}
.sub-menu li a {
padding: 10px 20px;
}
.nav>li:hover .sub-menu {
display: block;
}
</style>
</head>
<body>
<ul class="nav">
<li><a href="#">菜单 1</a></li>
<li>
<a href="#">菜单 2</a>
<ul class="sub-menu">
<li><a href="#">子菜单 2.1</a></li>
<li><a href="#">子菜单 2.2</a></li>
</ul>
</li>
<li><a href="#">菜单 3</a></li>
</ul>
<script>
// JavaScript 部分主要用于处理交互逻辑,此处示例中通过 CSS 实现了悬停显示子菜单的效果。
</script>
</body>
</html>基础概念:
ul 和 li 标签用于创建列表。position: absolute 用于使子菜单相对于父元素进行绝对定位。优势:
类型: 常见的二级导航菜单类型包括基于悬停显示、点击显示等。
应用场景: 适用于网站导航栏中需要多级分类展示的场景,如电商网站的商品分类、企业网站的部门导航等。
常见问题及解决方法:
top、left)的设置是否准确。希望这个示例对你有帮助,如有其他需求,请进一步明确提问。
没有搜到相关的文章