加入收藏 | 设为首页 | 会员中心 | 我要投稿 温州站长网 (https://www.52wenzhou.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 编程要点 > 语言 > 正文

用JS怎样完成类似淘宝tab切换栏的功能?

发布时间:2022-01-11 18:47:58 所属栏目:语言 来源:互联网
导读:用JS怎样实现类似淘宝tab切换栏的功能?tab切换栏的功能还是比较实用的,例如淘宝页面的商品详情,规格参数和累计评价三个栏,点击不同的栏下面出现的内容不同,这样的设计的好处就是能让页面更整洁美观,接下来我们就看看这个效果要怎样做。 根据淘宝做出默
    用JS怎样实现类似淘宝tab切换栏的功能?tab切换栏的功能还是比较实用的,例如淘宝页面的商品详情,规格参数和累计评价三个栏,点击不同的栏下面出现的内容不同,这样的设计的好处就是能让页面更整洁美观,接下来我们就看看这个效果要怎样做。
 
 
 
  根据淘宝做出默认状态下为商品介绍栏以及对应的文字,鼠标点击其他栏目,点击的栏目背景颜色变红,同时下面的栏目出现点击栏目的解释。
 
 
 
  程序源码:
 
  <!DOCTYPE html>
  <html lang="zh-CN">
  <head>
   <meta charset="UTF-8">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <title>tab栏切换操作</title>
 
   <style>
    * {
     margin: 0;
     padding: 0;
     box-sizing: border-box;
    }
    .tab {
     margin: 100px auto;
     width: 1200px;
     height: 330px;
     background-color: royalblue;
    }
    .tab .tab_list {
     height: 30px;
     background-color: slategrey;
    }
    .tab ul li{
     float: left;
     list-style: none;
     cursor: pointer;
     width: 100px;
     height: 30px;
    }
    .color {
     background-color: red;
    }
    .tab .tab_con {
     height: 300px;
     background-color: silver;
    }
   </style>
  </head>
  <body>
   <div class = "tab">
    <div class="tab_list">
     <ul>
      <li class = "color">商品介绍</li>
      <li>规格与包装</li>
      <li>售后保障</li>
      <li>商品评价</li>
      <li>手机社区</li>
     </ul>
    </div>
    <div class="tab_con">
     <div class="item" style="display:block;">商品介绍</div>
     <div class="item" style="display: none;">规格与包装</div>
     <div class="item" style="display: none;">售后保障</div>
     <div class="item" style="display: none;">商品评价</div>
     <div class="item" style="display: none;">手机社区</div>
 
    </div>
   </div>
 
   <script>
    var tab_list = document.querySelector('.tab_list');
    var lis = tab_list.querySelectorAll('li');
    var items = document.querySelectorAll('.item');
    for(var i = 0;i<lis.length;i++){
     //给所有的li添加自定义属性索引号
     lis[i].setAttribute('index',i)
     //设置鼠标点击事件
     lis[i].onclick = function(){
      for( var i = 0;i<lis.length;i++){
       //将所有类的类名设置为空
       lis[i].className='';
       //将所有的display设置为none
       items[i].style.display='none';
      }
      //给点击事件的类名设置为color
      this.className='color';
      //获取点击事件的索引号
      var index = this.getAttribute('index');
      // for (var i=0;i<items.length;i++){
      //  items[i].style.display='none';
      // }
      //将点击事件的display设置为block
      items[index].style.display = 'block';
     }
    }
   </script>
  </body>
  </html>

(编辑:温州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读