<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>tab栏切换</title>
<style>
* {
margin: 0;
padding: 0;
}
/* ul {
list-style-type: none;
} */
.box {
width: 200px;
height: 200px;
border: 1px solid #ccc;
margin: 100px auto;
/* overflow: hidden; */
}
.title {
height: 45px;
}
.title span {
display: inline-block;
width: 96px;
background-color: pink;
line-height: 45px;
text-align: center;
cursor: pointer;
}
.title span.current {
background-color: rgb(192, 100, 113);
}
.content div {
height: 156px;
background-color: rgb(192, 100, 113);
display: none;
}
.content div.current {
display: block;
}
</style>
</head>
<body>
<div class="box">
<div class="title">
<span class="current">牡丹</span>
<span>玫瑰</span>
</div>
<div class="content">
<div class="current">我是牡丹模块</div>
<div>我是玫瑰模块</div>
</div>
</div>
<script>
//1.鼠标放在tab栏高亮显示,其他tab栏取消高亮
var title = document.getElementsByClassName("title");
var spans = title[0].getElementsByTagName("span");
for (var i = 0; i < spans.length; i++) {
var span = spans[i];
//通过自定义属性,记录当前span的索引
span.setAttribute("index", i);
//注册事件
span.onmouseover = fn;
}
//鼠标经过的事件处理函数
function fn() {
//让所有的span取消高亮显示
for (var i = 0; i < spans.length; i++) {
var span = spans[i];
span.className = "";
}
this.className = "current";
//2.tab栏对应的div显示,其他隐藏
//获取所有的div
var content = document.getElementsByClassName("content");
var divs = content[0].getElementsByTagName("div");
for (var i = 0; i < divs.length; i++) {
var div = divs[i];
div.className = "";
}
//获取自定义属性的值
var index = parseInt(this.getAttribute("index")) //this.getAttribute("index")获取到的是字符串类型,需要转化成数值类型
divs[index].className = "current";
}
</script>
</body>
</html>
tab栏切换
最新推荐文章于 2022-11-03 15:30:39 发布