JavaScript之选项卡

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title> 选项卡</title>
    <style type="text/css">
     /* CSS样式制作 */  
     *{
         padding:0px;
         margin:0px;
         font:12px normal "microsoft yahei";
     }
     #tabs{
         width:290px;
         height:150px;
         padding:5px;
         margin:20px;
     }
     #tabs ul{
         list-style:none;
         display:block;
         height:30px;
         line-height:30px;
         border-bottom:2px saddlebrown solid;//重褐色
     }
     #tabs ul li{
         background:#fff;
         cursor:pointer;//光标显示为一只手
         float:left;
         list-style:none;
         height:28px;
         line-height:28px;
         margin:0px 3px;
         border:1px solid #aaaaaa;
         border-bottom:none;
         display:inline-block;
         width:60px;
         text-align:center;
     }
     #tabs ul li.on{
         border-top:2px solid saddlebrown;
         border-bottom:2px solid #fff;
     }
     #tabs div{
         height:120px;
         line-height:25px;
         border:1px solid #336699;
         border-top:none;
         padding:5px;
     }
     .hide{display:none;}
    </style>
    <script type="text/javascript">
    // JS实现选项卡切换
    window.onload = function(){
        var oTab = document.getElementById("tabs")//获取tabs的id赋值给oTab。
        var oUl = oTab.getElementsByTagName("ul")[0];//从oTab获取ul的元素。
        var oLis = oUl.getElementsByTagName("li");//从oUl中获取li的元素。
        var oDivs =oTab.getElementsByTagName("div");//从oTab中获取div的元素。
        for(var i=0,len = oLis.length;i<len;i++){  //大循环时对li的循环。
            oLis[i].index = i;//oLis中的所有元素设置一个索引值,便于查找
            oLis[i].onclick = function(){  //点击事件
                for (var n=0;n<len;n++){   
                    oLis[n].className ="";
                    oDivs[n].className = "hide";
                }
                this.className = "on";
                oDivs[this.index].className = "";//设置oDivs中的this.index元素中的className为空
            }
        };
    }
    </script>
</head>
<body>
<!-- HTML页面布局 -->
<div id="tabs">
    <ul>
        <li class="on">房产</li>
        <li>家居</li>
        <li>二手房</li>
    </ul>
    <div>
        275万购昌平邻铁三居 总价20万买一居<br>
        200万内购五环三居 140万安家东三环<br>
        北京首现零首付楼盘 53万购东5环50平<br>
        京楼盘直降5000 中信府 公园楼王现房<br>
    </div>
    <div class="hide">
        40平出租屋大改造 美少女的混搭小窝<br>
        经典清新简欧爱家 90平老房焕发新生<br>
        新中式的酷色温情 66平撞色活泼家居<br>
        瓷砖就像选好老婆 卫生间烟道的设计<br>
    </div>
    <div class="hide">
        通州豪华3居260万 二环稀缺2居250w甩<br>
        西3环通透2居290万130万2居限量抢购<br>
        黄城根小学学区仅260万 121平70万抛!<br>
        独家别墅280万 苏州桥2居优惠价248万<br>
    </div>
</div>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
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> ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值