源码论坛,商业源码下载,尽在锦尚中国商业源码论坛
标题:
css+js实现tab切换功能的简单方法
[打印本页]
作者:
欧阳锋
时间:
2023-3-20 10:39
标题:
css+js实现tab切换功能的简单方法
如下直接给出HTML,CSS,等代码,不做过多解释,只看javaScript代码,主做笔记,如有不懂,留言我会解答
css样式:
* {
margin: 0;
padding: 0;
}
ul {
list-style: none;
}
.wrapper {
width: 1000px;
height: 475px;
margin: 0 auto;
margin-top: 100px;
}
.tab {
border: 1px solid #ddd;
border-bottom: 0;
height: 36px;
width: 320px;
}
.tab li {
position: relative;
float: left;
width: 80px;
height: 34px;
line-height: 34px;
text-align: center;
cursor: pointer;
border-top: 4px solid #fff;
}
.tab span {
position: absolute;
right: 0;
top: 10px;
background: #ddd;
width: 1px;
height: 14px;
overflow: hidden;
}
.products {
width: 1002px;
border: 1px solid #ddd;
height: 476px;
}
.products .main {
float: left;
display: none;
}
.products .main.active {
display: block;
}
.tab li.active {
border-color: red;
border-bottom: 0;
}
复制代码
html代码:
<div class="wrapper">
<ul class="tab">
<li class="tab-item active">国际大牌<span>◆</span></li>
<li class="tab-item">国妆名牌<span>◆</span></li>
<li class="tab-item">清洁用品<span>◆</span></li>
<li class="tab-item">男士精品</li>
</ul>
<div class="products">
<div class="main active">
<a href="###">图片可能失效,自己改下内容<img src="imgs/guojidapai.jpg" alt="" /></a>
</div>
<div class="main">
<a href="###">图片可能失效,自己改下内容<img src="imgs/guozhuangmingpin.jpg" alt="" /></a>
</div>
<div class="main">
<a href="###">图片可能失效,自己改下内容<img src="imgs/qingjieyongpin.jpg" alt="" /></a>
</div>
<div class="main">
<a href="###">图片可能失效,自己改下内容<img src="imgs/nanshijingpin.jpg" alt="" /></a>
</div>
</div>
</div>
复制代码
js代码如下:会进行每一步分析
了解导航切换运行的原理,以及数组的索引
let tab = document.querySelector('.tab')
let lis = document.querySelectorAll('.tab .tab-item')
let main = document.querySelectorAll('.main')
// 因为lis索引的为全部.tab-item,所以此处需要用到循环遍历
for (let i = 0; i < lis.length; i++) {
console.log(lis[i])
// 给每一个lis添加点击事件,切记lis[i]
lis[i].addEventListener('click', function () {
console.log(i)
for (let i = 0; i < main.length; i++) {
// 清空li头部的样式
lis[i].className = '';
}
// 给每一个小li 添加头部样式
this.className = 'active'
// 清空内容框的图片内容
for (let i = 0; i < main.length; i++) {
main[i].style.display = 'none'
}
//显示内容
main[i].style.display = 'block'
})
}
复制代码
好了,以上就是锦尚中国关于利用css+js实现tab切换功能的方法,更多教程可以搜索本站的其余内容!感谢大家对锦尚中国源码论坛的支持与厚爱!
欢迎光临 源码论坛,商业源码下载,尽在锦尚中国商业源码论坛 (https://bbs.52jscn.com/)
Powered by Discuz! X3.3