js选项卡效果

js选项卡效果documentAPI getElementBy 返回具有指定 ID 属性值的第一个对象的一个引用 getElementsB 返回带有指定标签名的对象的集合 返回元素的顺序是它们在文档中的顺序 getElementsB 属性设置或返回元素的 class 属性 body 导航栏部分 HTML 代码 divclass box lt divclass box body

documentAPI:

getElementById() 返回具有指定 ID 属性值的第一个对象的一个引用

getElementsByTagName 返回带有指定标签名的对象的集合, 返回元素的顺序是它们在文档中的顺序。

 getElementsByclassName 属性  设置或返回元素的 class 属性

<body> <!--导航栏部分HTML代码--> <div class="box"> <nav id="nav"> <ul> <li><a href="#">a</a></li> <li><a href="#">b</a></li> <li><a href="#">c</a></li> <li><a href="#">d</a></li> </ul> </nav> <!--内容部分HTML代码--> <div id="container"> <div class="tab" style="background-color: pink;">a部分 可根据自己的需要设置内容</div> <div class="tab" style="background-color: cadetblue;">b部分</div> <div class="tab" style="background-color: blueviolet;">c部分</div> <div class="tab" style="background-color: chartreuse;">d部分</div> </div> </div> </body>
 <style> *{ padding: 0; margin: 0; text-decoration: none; } .box{ position: relative; } #nav ul{ width: 360px; height: 36px; display: flex; flex-direction: row; margin: auto; background-color: rgb(231, 231, 231); } #nav ul li{ width: 58px; height: 35px; text-align: center; line-height: 35px; list-style: none; } #nav ul li:hover{ background-color: white; border-top: yellow 2px solid; box-sizing: border-box; } #nav ul li a{ color: black; } #container{ width: 360px; margin: auto ; background-color: white; } .tab{ width: 360px; height: 300px; } </style>
 <script> var nav=document.getElementById('nav'); //返回导航栏 console.log(nav); //测试 var oNav=nav.getElementsByTagName('li'); console.log(oNav); var container=document.getElementById('container'); var oDiv=container.getElementsByClassName('tab'); // console.log(oDiv); //设置条件 for(var i=0;i<oNav.length;i++){ //index 属性可返回下拉列表中选项的索引位置 oNav[i].index=i; oNav[i].onmouseover=function () { //鼠标移入效果 for(var i=0;i<oNav.length;i++){ oDiv[i].style.display="none"; } oDiv[this.index].style.display="block" } for(var m=1;m<oNav.length;m++){ oDiv[m].style.display="none"; } } </script>

完整代码

<!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>
            *{
                padding: 0;
                margin: 0;
                text-decoration: none;
            }
            .box{
                position: relative;
            }
            #nav ul{
                width: 360px;
                height: 36px;
                display: flex;
                flex-direction: row;
                margin: auto;
                background-color: rgb(231, 231, 231);
            }
            #nav ul li{
                width: 58px;
                height: 35px;
                text-align: center;
                line-height: 35px;
                list-style: none;
            }
            #nav ul li:hover{
                background-color: white;
                border-top: yellow 2px solid;
                box-sizing: border-box;
            }
            #nav ul li a{
                color: black;
            }
            #container{
                width: 360px;
                margin: auto ;
                background-color: white;
            }
            .tab{
                width: 360px;
                height: 300px;
            }
        </style>
</head>
    <body>
            <!--导航栏部分HTML代码-->
            <div class="box">
                <nav id="nav">
                    <ul>
                        <li><a href="#">a</a></li>
                        <li><a href="#">b</a></li>
                        <li><a href="#">c</a></li>
                        <li><a href="#">d</a></li>
                    </ul>
                </nav>
            <!--内容部分HTML代码-->
                <div id="container">
                    <div class="tab" style="background-color: pink;">a部分 可根据自己的需要设置内容</div>
                    <div class="tab" style="background-color: cadetblue;">b部分</div>
                    <div class="tab" style="background-color: blueviolet;">c部分</div>
                    <div class="tab" style="background-color: chartreuse;">d部分</div>
                </div>
            </div>
    </body>
    <script>
         var nav=document.getElementById('nav');   //返回导航栏
         console.log(nav);                         //测试
         var oNav=nav.getElementsByTagName('li');  
         console.log(oNav);                        
         var container=document.getElementById('container');
         var oDiv=container.getElementsByClassName('tab');
        //  console.log(oDiv);
        //设置条件
         for(var i=0;i<oNav.length;i++){   
             
            //index 属性可返回下拉列表中选项的索引位置
             oNav[i].index=i;
             oNav[i].onmouseover=function () {    //鼠标移入效果
                 for(var i=0;i<oNav.length;i++){
                   
                     oDiv[i].style.display="none";
                 }
              
                 oDiv[this.index].style.display="block"
             }
             for(var m=1;m<oNav.length;m++){
                  
                     oDiv[m].style.display="none";
             }
         }
    </script>
</html>

效果图

js选项卡效果

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/233015.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • G6流程图绘制

    G6流程图绘制为了能在线编辑流程 支持流程节点编辑等功能 支持人员等选择功能 支持流程图数据保存 利用阿里 G6 进行设计开发 整体效果图如下 支持放大缩小 节点移动 添加节点及边等 同时支持节点及边删除操作 流程图数据保存等工作 支持节点编辑 包括人员选择 图形选择 宽高编辑 背景色 边框色等信息编辑 支持边的编辑 边描述等 各种交互功能就不赘述了 页面代码如下 DOCTYPE YPE html head head html

    2025年7月25日
    2
  • MySQL修改表名注释

    MySQL修改表名注释MySQL修改表名注释altertabletest1comment’修改后的表的注释’;

    2022年6月1日
    47
  • 数据库泄露导致信息泄露_数据库经历的五个阶段

    数据库泄露导致信息泄露_数据库经历的五个阶段前言最近用了公司某框架,部署到现场后,现场运维开始维护现场数据,在不断操作的过程中,系统崩溃,查看后台日志,druid连接池已经获取不到连接。于是开始了排查之旅。在此记录。排查开始首先后台的报错

    2022年8月6日
    7
  • 利用CANdb++ Editor在DBC文件中进行报文解析(详细教程)

    利用CANdb++ Editor在DBC文件中进行报文解析(详细教程)

    2020年11月8日
    2.4K
  • Android之Activity生命周期浅析(一)「建议收藏」

    Android之Activity生命周期浅析(一)「建议收藏」Activity作为四大组件之一,出现的频率相当高,基本上我们在android的各个地方都能看见它的踪影,因此深入了解Activity,对于开发高质量应用程序是很有帮助的。今天我们就来详细地聊聊Activity的生命周期,以便我们在以后的开发中能如鱼得水。一、初识Activity  在日常应用中Activity是与用户交互的接口,它提供了一个用户完成相关操作的窗口。当我们在开发中创建Activit

    2022年8月16日
    9
  • SQL语句创建索引_MySQL索引

    SQL语句创建索引_MySQL索引createindex[index_mode]on[cn_name]([car_mode]);index_mode自定义索引名cn_name表名car_mode列名

    2025年9月23日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号