使用js实现tab页签切换效果

本文介绍了一个简单的HTML和JavaScript实现的Tab切换效果。通过CSS样式设置Tab栏和内容区域的布局,利用JavaScript监听Tab按钮点击事件并切换显示的内容区块。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


效果图如下

[html]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"  
  2. "http://www.w3.org/TR/html4/loose.dtd">  
  3. <html xmlns="http://www.w3.org/1999/xhtml">  
  4.     <head>  
  5.         <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  
  6.         <title>New Web Project</title>  
  7.         <style type="text/css">  
  8.             #content {  
  9.                 width: 400px;  
  10.                 height: 200px;  
  11.             }  
  12.               
  13.             #tab_bar {  
  14.                 width: 400px;  
  15.                 height: 20px;  
  16.                 float: left;  
  17.             }  
  18.             #tab_bar ul {  
  19.                 padding: 0px;  
  20.                 margin: 0px;  
  21.                 height: 20px;  
  22.                 text-align: center;  
  23.             }  
  24.               
  25.             #tab_bar li {  
  26.                 list-style-type: none;  
  27.                 float: left;  
  28.                 width: 133.3px;  
  29.                 height: 20px;  
  30.                 background-color: gray;  
  31.             }  
  32.               
  33.             .tab_css {  
  34.                 width: 400px;  
  35.                 height: 200px;  
  36.                 background-color: orange;  
  37.                 display: none;  
  38.                 float: left;  
  39.             }  
  40.               
  41.         </style>  
  42.         <script type="text/javascript">  
  43.             var myclick = function(v) {  
  44.                 var llis = document.getElementsByTagName("li");  
  45.                 for(var i = 0; i < llis.length; i++) {  
  46.                     var lli = llis[i];  
  47.                     if(lli == document.getElementById("tab" + v)) {  
  48.                         lli.style.backgroundColor = "orange";  
  49.                     } else {  
  50.                         lli.style.backgroundColor = "gray";  
  51.                     }  
  52.                 }  
  53.   
  54.                 var divs = document.getElementsByClassName("tab_css");  
  55.                 for(var i = 0; i < divs.length; i++) {  
  56.   
  57.                     var divv = divs[i];  
  58.   
  59.                     if(divv == document.getElementById("tab" + v + "_content")) {  
  60.                         divv.style.display = "block";  
  61.                     } else {  
  62.                         divv.style.display = "none";  
  63.                     }  
  64.                 }  
  65.   
  66.             }  
  67.         </script>  
  68.     </head>  
  69.     <body>  
  70.         <div id="content">  
  71.             <div id="tab_bar">  
  72.                 <ul>  
  73.                     <li id="tab1" onclick="myclick(1)" style="background-color: orange">  
  74.                         tab1  
  75.                     </li>  
  76.                     <li id="tab2" onclick="myclick(2)">  
  77.                         tab2  
  78.                     </li>  
  79.                     <li id="tab3" onclick="myclick(3)">  
  80.                         tab3  
  81.                     </li>  
  82.                 </ul>  
  83.             </div>  
  84.             <div class="tab_css" id="tab1_content" style="display: block">  
  85.                 <div>页面一</div>  
  86.             </div>  
  87.             <div class="tab_css" id="tab2_content">  
  88.                 <div>页面二</div>  
  89.             </div>  
  90.             <div class="tab_css" id="tab3_content">  
  91.                 <div>页面三</div>  
  92.             </div>  
  93.         </div>  
  94.     </body>  
  95. </html>  
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值