纯手工JS写法tab切换特效代码,菜单导航切换效果
本文主要为大家详细介绍了js实现tab栏切换特效,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
思路:
1.点击每个tab时。要先用排他思想,使得所有li不加上背景,再让点击的tab加上某个类。
2.上面的tab与下面显示内容的页面是一一对应的。因此,可以使用自定义属性,使tab加上一个index索引,这样就能知道每次点击的是哪一个tab了。
3.最后仍然使用排他思想,当点击tab时,先让所有的内容都不显示,再让对应的内容进行显示。
代码:
<style>
.new_nav{ width:100%; height:50px; overflow:hidden}
.new_nav li{ float:left; list-style-type:none; padding:0 10px;}
.new_nav li.active{ color:#F00}
.list_li{ display:none;}
</style>
<div class="new_nav">
<ul>
<li class="tab active">全部</li>
<li class="tab">11111</li>
<li class="tab">22222</li>
<li class="tab">33333</li>
</ul>
</div>
<div class="list_box">
<div class="list_li" style="display:block">aaaaa</div>
<div class="list_li">bbbbb</div>
<div class="list_li">ccccc</div>
<div class="list_li">ddddd</div>
</div>
<script>
var lis = document.querySelectorAll('.tab');
var detail = document.querySelector('.list_box');
var items = detail.querySelectorAll('.list_li');
for (var i = 0; i < lis.length; i++) {
lis[i].setAttribute('index', i);
var index;
lis[i].onclick = function() {
for (var j = 0; j < lis.length; j++) {
lis[j].className = 'tab';
items[j].style.display = 'none';
}
this.className = 'tab active';
index = this.getAttribute('index');
items[index].style.display = 'block';
}
}
</script>以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持建站学习网。
本文网址:https://www.dedexuexi.com/wysj/javascript/3734.html
本站部分文章搜集与网络,如有侵权请联系本站,转载请说明出处。










