javascript 简易选项卡

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style type="text/css" >
        .xuanx{
            width: 600px;
            height: 300px;
            background-color: red;
        }
        .clearfix:after{
            content: '';
            visibility:hidden;
            height: 0;
            clear:both;
            display: block;
        }
        .nav a{
            color: #fff;
            text-decoration: none;
            height: 30px;
            width: 200px ;
            line-height: 30px;
            
            text-align:center;
            display: inline-block;
            background-color: #000;
            float: left;
        }
        .content{
            width: 600px;
            height: 270px;
            background-color: blue;
        }
        .content div{
            display: none;
        }
    </style>
</head>
<body>
    <div class="xuanx">
        <div class="nav clearfix " id = 'link'>
            <a href="javascript:void(0)">标题1</a>
            <a href="javascript:void(0)">标题2</a>
            <a href="javascript:void(0)">标题3</a>
        </div>
        <div class="content" id = 'link-centent'>

        <div style='display: block;'>
            <span>内容1</span>
        </div>
        <div >
            <span>内容2</span>
        </div>
        <div >
            <span>内容3</span>
        </div>
            
        </div>
    </div>

    <script type="text/javascript">
    var Aparent = document.getElementById('link');
    var Achild = Aparent.getElementsByTagName('a');
    var Div = document.getElementById('link-centent');
    var Divs = Div.getElementsByTagName('div');
    for(let i = 0;i<Achild.length;i++){

        // Achild[i].index = i;    这里是用var的解决方法,将每一次循环的索引进行存储,后面进行直接调用
        Achild[i].onclick = function(){

            for(var j=0;j<Achild.length;j++){
                Achild[j].style='';
                Divs[j].style='';
            }
            this.style.color= 'red';
            this.style.backgroundColor='blue';
            
            
            
            // Divs[this.index].style.display='block';
            Divs[i].style.display='block';
        }
    
    }

    </script>
</body>
</html>

 

转载于:https://www.cnblogs.com/whileke/p/11560201.html

JavaScript中,创建一个简易选项卡功能可以通过HTML结构和简单的脚本来实现。以下是一个基本的步骤和代码示例: 1. HTML结构: ```html <div class="tabs"> <ul id="tab-list"> <li><a href="#tab1">Tab 1</a></li> <li><a href="#tab2">Tab 2</a></li> <li><a href="#tab3">Tab 3</a></li> </ul> <div id="tab-content"> <div id="tab1" class="tab-panel active">Content for Tab 1</div> <div id="tab2" class="tab-panel">Content for Tab 2</div> <div id="tab3" class="tab-panel">Content for Tab 3</div> </div> </div> ``` 2. JavaScript/jQuery (为了简洁,这里使用jQuery): ```javascript <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> <script> $(document).ready(function() { // 获取所有的选项卡链接 var tabLinks = $('#tab-list a'); // 为每个链接添加点击事件处理函数 tabLinks.on('click', function(e) { e.preventDefault(); // 阻止默认的页面跳转 // 获取当前链接的id var currentTabId = $(this).attr('href'); // 隐藏所有内容 $('.tab-panel').hide(); // 显示点击链接对应的内容 $('#' + currentTabId).show(); // 使当前链接变为激活状态 $(this).parent().addClass('active').siblings().removeClass('active'); }); }); </script> ``` 3. CSS样式(用于美化): ```css .tabs ul { list-style-type: none; margin: 0; padding: 0; display: flex; } .tabs li { margin-right: 10px; } .tabs a { display: block; padding: 10px; text-decoration: none; } .tab-panel { display: none; padding: 10px; } .active { background-color: #f1f1f1; } </style> ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值