用js写选项卡

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>选项卡</title>
	<style type="text/css">
	*{

		margin: 0px;
		padding: 0px;
		/*清除无序列表黑点*/
		list-style: none;
	}
	.containter{
		width: 300px;
		height: 300px;
		border: 1px solid #999;
		/*多余部分隐藏*/
		overflow: hidden;


	}
	.items{
		width: 300px;
		/*弹性盒子*/
		display: flex;
		float: left;
	    font-size: 15px;
	}
	.item{
		/*均等划分每一个盒子*/
		flex: 1;
		float: left;
		font-size: 15px;
		text-align: center;
	}
	.box{
		text-align: center;
		/*行高*/
		line-height: 280px;
	}

	</style>
</head>
<body>
	<div class="containter">
		<ul class="items">

			<li class="item">第一项</li>
			<li class="item">第二项</li>
			<li class="item">第三项</li>
			<li class="item">第四项</li>
			<li class="item">第五项</li>
		</ul>
	<div class="box">第一项</div>
	<div class="box">第二项</div>
	<div class="box">第三项</div>

	<div class="box">第四项</div>
	<div class="box">第五项</div>
	</div>
</body>
  <script type="text/javascript">
  // 获取每个Li的一个数组元素
  var item= document.getElementsByClassName("items")[0].getElementsByTagName("li")
  // 获得div的一个数组元素
  var box=  document.getElementsByClassName("box");
      for (var i = 0;i<item.length; i++) {
      	// 使用this获得当前元素
      	item[i].index=i;
      	// 每个li的点击事件
      	item[i].onclick = function(){
      		for (var j = 0;j<box.length ;j++) {0 
      			// 点击之后实现div内容的隐藏
      			box[j].style.display="none";
      			// 点击之后实现每个Li的背景颜色的改变
      			item[j].style.background="#fff";

      			
      		}
      		// 实现当前对象的背景颜色的改变
      		this.style.background="pink";
      		// 实现div内容的显示
      		box[this.index].style.display="block";

      	}
      
      };


  </script>

</html>
好的,以下是一个基本的选项卡切换的实现: HTML代码: ```html <div class="tab"> <button class="tablinks" onclick="openTab(event, 'tab1')">选项卡1</button> <button class="tablinks" onclick="openTab(event, 'tab2')">选项卡2</button> <button class="tablinks" onclick="openTab(event, 'tab3')">选项卡3</button> </div> <div id="tab1" class="tabcontent"> <h3>选项卡1</h3> <p>这是选项卡1的内容。</p> </div> <div id="tab2" class="tabcontent"> <h3>选项卡2</h3> <p>这是选项卡2的内容。</p> </div> <div id="tab3" class="tabcontent"> <h3>选项卡3</h3> <p>这是选项卡3的内容。</p> </div> ``` CSS代码: ```css .tab { overflow: hidden; border: 1px solid #ccc; background-color: #f1f1f1; } .tab button { background-color: inherit; float: left; border: none; outline: none; cursor: pointer; padding: 14px 16px; transition: 0.3s; } .tab button:hover { background-color: #ddd; } .tab button.active { background-color: #ccc; } .tabcontent { display: none; padding: 6px 12px; border: 1px solid #ccc; border-top: none; } ``` JavaScript代码: ```javascript function openTab(evt, tabName) { var i, tabcontent, tablinks; tabcontent = document.getElementsByClassName("tabcontent"); for (i = 0; i < tabcontent.length; i++) { tabcontent[i].style.display = "none"; } tablinks = document.getElementsByClassName("tablinks"); for (i = 0; i < tablinks.length; i++) { tablinks[i].className = tablinks[i].className.replace(" active", ""); } document.getElementById(tabName).style.display = "block"; evt.currentTarget.className += " active"; } ``` 在这个示例中,我们首先定义了一个包含选项卡按钮和内容的HTML结构。然后,我们使用CSS样式来设置选项卡的外观。最后,我们使用JavaScript来实现选项卡切换的逻辑。具体来说,当用户点击选项卡按钮时,我们会隐藏所有选项卡内容,并将所有选项卡按钮的类名设置为非活动状态。然后,我们显示当前选项卡的内容,并将其对应的按钮类名设置为活动状态。这样,用户就可以通过点击不同的选项卡按钮来切换选项卡内容了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值