二级菜单导航通常指的是在网页上展示的多级菜单结构,其中一级菜单项下包含多个二级菜单项。这种设计有助于用户在复杂的应用或网站中快速找到所需的功能或信息。
以下是一个简单的JavaScript实现二级菜单导航的示例代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>二级菜单导航</title>
<style>
ul {
list-style-type: none;
padding: 0;
}
li {
display: inline-block;
margin-right: 20px;
}
.submenu {
display: none;
position: absolute;
background-color: #f9f9f9;
min-width: 160px;
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
z-index: 1;
}
.submenu li {
display: block;
}
.menu-item:hover .submenu {
display: block;
}
</style>
</head>
<body>
<nav>
<ul>
<li class="menu-item">
<a href="#">首页</a>
</li>
<li class="menu-item">
<a href="#">产品</a>
<ul class="submenu">
<li><a href="#">产品1</a></li>
<li><a href="#">产品2</a></li>
<li><a href="#">产品3</a></li>
</ul>
</li>
<li class="menu-item">
<a href="#">关于我们</a>
<ul class="submenu">
<li><a href="#">公司简介</a></li>
<li><a href="#">团队介绍</a></li>
</ul>
</li>
<li class="menu-item">
<a href="#">联系我们</a>
</li>
</ul>
</nav>
<script>
document.addEventListener('DOMContentLoaded', function() {
const menuItems = document.querySelectorAll('.menu-item');
menuItems.forEach(item => {
item.addEventListener('mouseenter', function() {
const submenu = this.querySelector('.submenu');
if (submenu) {
submenu.style.display = 'block';
}
});
item.addEventListener('mouseleave', function() {
const submenu = this.querySelector('.submenu');
if (submenu) {
submenu.style.display = 'none';
}
});
});
});
</script>
</body>
</html>
.submenu
的display
属性是否正确设置为none
,并且在鼠标悬停时设置为block
。position
属性设置不正确。.submenu
的position
属性设置为absolute
,并适当调整top
和left
值。通过以上示例和解决方法,你应该能够实现一个基本的二级菜单导航,并解决常见的问题。
领取专属 10元无门槛券
手把手带您无忧上云