js实现选项卡切换显示对应内容,按钮切换页面内容

这篇博客介绍如何使用JavaScript和jQuery实现选项卡切换显示对应内容,以及通过"上一步"、"下一步"按钮来切换页面内容。文章提供HTML和JS代码示例,展示如何在点击头部选项卡或按钮时,动态显示和隐藏不同的div,同时更新头部选项卡的选中状态。

一、点击头部选项卡切换内容
头部如图所示(懒得改文字了,直接打码上图了)
如下图所示 头部有6个选项卡 被选中的选项卡背景色为白色
本文只给出html和js代码 样式表就不贴了
头部导航
第一个选项卡对应div的内容
在这里插入图片描述
第二个选项卡对应div的内容
在这里插入图片描述
可以看出是有切换内容的 表格都不一样
头部选项卡代码

<div class="formHeader">
	<ul>
		<li class="headerLi headerActive">XXX</li>
		<li class="headerLi headerOff">XXX</li>
		<li class="headerLi headerOff">XXX</li>
		<li class="headerLi headerOff">XXX</li>
		<li class="headerLi headerOff">XXX</li>
		<li class="headerLi headerOff">XXX</li>
	</ul>
</div>

表格所在的div(代码就不整理了,截图如下)
在这里插入图片描述

js代码如下(记得引入jquery)

//JS实现点击选项卡切换
window.onload = function() {
	var tabLi = $(".headerLi");
	var tabDiv = $(".infoForm");

	for(var k = 0; k < tabLi.length; k++) { //对tabLi数组进行循环
		tabLi[k].index = k;
		tabLi[k].onclick = function() { //判断哪一个li标签被点击
			for(var l = 0; l < tabLi.length; l++) { //对tabLi数组进行循环
				tabLi[l].className = "headerOff"; //所有li设置不被点击状态
				tabDiv[l].className = "infoForm hide"; //所有的div内容设置为hide状态
			}
			this.className = "headerActive";
			tabDiv[this.index].className = "infoForm show";
		}
	}
}

即可实现点击选项卡切换div内容了,也就是显示对应的div,隐藏其他的div

二、点击”上一步“、”下一步“按钮切换,对应div内容要切换,还要对应头部的选项卡

在这里插入图片描述

按钮代码
在这里插入图片描述

//JS实现点击上一步切换选项卡
var tabBackBtn = $(".backBtn");

for(var m = 0; m < tabBackBtn.length; m++) { //对tabLi数组进行循环
	tabBackBtn[m].index = m;
	tabBackBtn[m].onclick = function() { //判断哪一个"上一步"按钮被点击
		for(var n = 0; n < tabLi.length; n++) { //对tabLi数组进行循环
			tabLi[n].className = "headerOff"; //所有li设置不被点击状态
			tabDiv[n].className = "infoForm hide"; //所有的div内容设置为hide状态
		}
		tabLi[this.index].className = "headerActive";
		tabDiv[this.index].className = "infoForm show";
	}
}

//JS实现点击下一步切换选项卡
var tabNextBtn = $(".submitBtn");

for(var s = 0; s < tabNextBtn.length; s++) { //对tabLi数组进行循环
	tabNextBtn[s].index = s;
	tabNextBtn[s].onclick = function() { //判断哪一个"下一步"按钮被点击
		for(var t = 0; t < tabLi.length; t++) { //对tabLi数组进行循环
			tabLi[t].className = "headerOff"; //所有li设置不被点击状态
			tabDiv[t].className = "infoForm hide"; //所有的div内容设置为hide状态
		}
		tabLi[this.index + 1].className = "headerActive";
		tabDiv[this.index + 1].className = "infoForm show";
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值