HTML 之 左侧菜单

代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        .item .header{
            height: 35px;
            background-color: #2459a2;
            color: white;
            line-height: 35px;
        }
        .hide{
            display: none;
        }
    </style>
</head>
<body>
    <div>
        <div class="item">
            <div id="i1" class="header" onclick="ChangeMenu('i1')">菜单一</div>
            <div class="content hide ">
                <div>内容一</div>
                <div>内容一</div>
                <div>内容一</div>
            </div>
        </div>
        <div class="item">
            <div id="i2" class="header" onclick="ChangeMenu('i2')">菜单二</div>
            <div class="content hide">
                <div>内容二</div>
                <div>内容二</div>
                <div>内容二</div>
            </div>
        </div>
        <div class="item">
            <div id="i3" class="header" onclick="ChangeMenu('i3')">菜单三</div>
            <div class="content hide ">
                <div>内容三</div>
                <div>内容三</div>
                <div>内容三</div>
            </div>
        </div>
    </div>
    <script>
        function ChangeMenu(nid) {
            <!-- 获取当前鼠标点击的id -->
            var current_header= document.getElementById(nid)
            <!-- 从当前节点,获取父节点信息,然后获取该父节点获取所有子节点,即div里的item标签 -->
            var item_list = current_header.parentElement.parentElement.children;
            <!-- 循环所有节点,并把该节点下的第一个子节点添加hide属性 -->
            for(var i=0;i<item_list.length;i++){
               var current_itme = item_list[i];
               current_itme.children[1].classList.add('hide');

            }
            <!-- 将鼠标点击的当前节点下的内容,删除hide属性 -->
            current_header.nextElementSibling.classList.remove('hide')
        }
    </script>
</body>
</html>

展示

HTML 之  左侧菜单

上一篇:JS及Dom示例 | 分级菜单折叠


下一篇:props深入