好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

js实现tab栏切换制作

本文实例为大家分享了js实现tab栏切换制作的具体代码,供大家参考,具体内容如下

效果:

思想:

1.点击每个tab时。要先用排他思想,使得所有li不加上背景,再让点击的tab加上某个类。

2.上面的tab与下面显示内容的页面是一一对应的。因此,可以使用自定义属性,使tab加上一个index索引,这样就能知道每次点击的是哪一个tab了。

3.最后仍然使用排他思想,当点击tab时,先让所有的内容都不显示,再让对应的内容进行显示。

代码:

<!DOCTYPE html>
<html lang="en">
<head>
? ? <meta charset="UTF-8">
? ? <meta http-equiv="X-UA-Compatible" content="IE=edge">
? ? <meta name="viewport" content="width=device-width, initial-scale=1.0">
? ? <title>tab切换栏的制作</title>
? ? <style>
?
? ? ? ? *{
? ? ? ? ? ? padding: 0;
? ? ? ? ? ? margin: 0;
? ? ? ? }
? ? ? ? .head{
? ? ? ? ? ? width: 1000px;
? ? ? ? ? ? height: 30px;
? ? ? ? ? ? background-color: pink;
? ? ? ? ? ? margin: 10px auto;
? ? ? ? ? ??
? ? ? ? }
? ? ? ? ul{
? ? ? ? ? ? width: 100%;
? ? ? ? ? ? height: 100%;
? ? ? ? }
? ? ? ? li {
? ? ? ? ? ? display: inline-block;
? ? ? ? ? ? width: 100px;
? ? ? ? ? ? height: 100%;
? ? ? ? ? ? list-style: none;
? ? ? ? ? ? line-height: 30px;
? ? ? ? ? ? text-align: center;
? ? ? ? ? ? cursor: pointer;
? ? ? ? }
? ? ? ? .bg {
? ? ? ? ? ? color: white;
? ? ? ? ? ? background-color: red;
? ? ? ? }
? ? ? ? .item {
? ? ? ? ? ? display: none;
? ? ? ? }
? ? </style>
</head>
<body>
? ? <div class="head">
? ? ? ? <ul>
? ? ? ? ? ? <li>商品详情</li>
? ? ? ? ? ? <li>商品详情</li>
? ? ? ? ? ? <li>商品详情</li>
? ? ? ? ? ? <li>商品详情</li>
? ? ? ? ? ? <li>商品详情5</li>
? ? ? ? </ul>
? ? ? ? <div class="detail">
? ? ? ? ? ? <div class="item">item1</div>
? ? ? ? ? ? <div class="item">item2</div>
? ? ? ? ? ? <div class="item">item3</div>
? ? ? ? ? ? <div class="item">item4</div>
? ? ? ? ? ? <div class="item">item5</div>
? ? ? ? </div>
? ? ? ? <script>
? ? ? ? ? ? var lis = document.querySelectorAll('li');
? ? ? ? ? ? // 鼠标经过时,li加入className,同时让其他li去掉该类。
? ? ? ? ? ? // 绑定事件
? ? ? ? ? ? var detail = document.querySelector('.detail');
? ? ? ? ? ? var items = detail.querySelectorAll('.item');
? ? ? ? ? ? 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='';
? ? ? ? ? ? ? ? ? ? ? ? items[j].style.display = 'none';
? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? ? ? this.className='bg';
? ? ? ? ? ? ? ? ? ? index = this.getAttribute('index');
? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? items[index].style.display='block';
? ? ? ? ? ? ? ? }
?
? ? ? ? ? ? }

? ? ? ? </script>
? ? </div>
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

查看更多关于js实现tab栏切换制作的详细内容...

  阅读:29次