JavaScript实现左侧展开菜单的完整代码示例
作者:微光时间:2026-10-22 10:38:54浏览:186
本文通过完整的HTML、CSS和JavaScript代码示例,演示如何实现一个简洁的左侧展开菜单。核心逻辑利用JS遍历菜单项,通过切换CSS类名(如hide)控制子内容的显示与隐藏,实现点击标题展开对应内容并折叠其他项的功能。
JavaScript左侧菜单实现概述
以下代码展示了如何使用JavaScript实现左侧菜单的交互效果,供读者参考学习。
目前实现的代码量相对较多,后续随着学习的深入,可以使用更简洁的方式实现相同功能。
完整代码实现与逻辑解析
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
.hide {
display: none;
}
.item .header {
height: 35px;
background-color: #2459a2;
color: white;
line-height: 35px;
}
</style>
</head>
<body>
<div style="height: 48px"></div>
<div style="width: 300px">
<div class="item">
<div id='i1' class="header" onclick="ChangeMenu('i1');">菜单1</div>
<div class="content hide">
<div>内容1</div>
<div>内容1</div>
<div>内容1</div>
</div>
</div>
<div class="item">
<div id='i2' class="header" onclick="ChangeMenu('i2');">菜单2</div>
<div class="content hide">
<div>内容2</div>
<div>内容2</div>
<div>内容2</div>
</div>
</div>
<div class="item">
<div id='i3' class="header" onclick="ChangeMenu('i3');">菜单3</div>
<div class="content hide">
<div>内容3</div>
<div>内容3</div>
<div>内容3</div>
</div>
</div>
<div class="item">
<div id='i4' class="header" onclick="ChangeMenu('i4');">菜单4</div>
<div class="content hide">
<div>内容4</div>
<div>内容4</div>
<div>内容4</div>
</div>
</div>
</div>
<script>
function ChangeMenu(nid) {
var current_header = document.getElementById(nid);
var item_list = current_header.parentElement.parentElement.children;
for (var i = 0; i < item_list.length; i++) {
var current_item = item_list[i];
current_item.children[1].classList.add('hide');
}
current_header.nextElementSibling.classList.remove('hide');
}
</script>
</body>
</html>
菜单交互效果演示
菜单初始状态如下所示:

点击任意一个菜单标题后,效果变为:

通过上述步骤,即完成了一个基础的左侧菜单功能。
以上内容为本文的全部分享,希望能为读者的学习提供便利,同时也欢迎继续支持本站。
作者最新文章
JavaScript零基础入门:从环境搭建到运行第一段代码
2026-11-05 15:29:58
HTML链接中javascript:void(0)的作用及现代替代方案
2026-11-05 10:07:47
在线调试 JS 时怎么引入 jQuery 或 Vue 等第三方库
2026-11-05 08:53:56
原生JavaScript实现简易颜色选择器原理与代码
2026-11-03 23:22:19
JS原生表单序列化:FormData与URLSearchParams用法详解
2026-11-03 23:13:21
