JavaScript TAB栏切换效果的示例


Posted in Javascript onNovember 05, 2020

代码实现:

<!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>Document</title>
  <style>
    * {
      margin: 0;
      padding: 0;
    }
    
    li {
      list-style-type: none;
    }
    
    .tab {
      width: 978px;
      margin: 100px auto;
    }
    
    .tab_list {
      height: 39px;
      border: 1px solid #ccc;
      background-color: #f1f1f1;
    }
    
    .tab_list li {
      float: left;
      height: 39px;
      line-height: 39px;
      padding: 0 20px;
      text-align: center;
      cursor: pointer;
    }
    
    .tab_list .current {
      background-color: #c81623;
      color: #fff;
    }
    
    .item_info {
      padding: 20px 0 0 20px;
    }
    
    .item {
      display: none;
    }
  </style>
</head>

<body>
  <div class="tab">
    <div class="tab_list">
      <ul>
        <li class="current">商品介绍</li>
        <li>规格与包装</li>
        <li>售后保障</li>
        <li>商品评价(50000)</li>
        <li>手机社区</li>
      </ul>
    </div>
    <div class="tab_con">
      <div class="item" style="display: block;">
        商品介绍模块内容
      </div>
      <div class="item">
        规格与包装模块内容
      </div>
      <div class="item">
        售后保障模块内容
      </div>
      <div class="item">
        商品评价(50000)模块内容
      </div>
      <div class="item">
        手机社区模块内容
      </div>

    </div>
  </div>
  <script>
    // 获取元素
    var tab_list = document.querySelector('.tab_list');
    var lis = tab_list.querySelectorAll('li');
    var items = document.querySelectorAll('.item');
    // for循环绑定点击事件
    for (var i = 0; i < lis.length; i++) {
      // 开始给5个li 设置索引号 
      lis[i].setAttribute('index', i);
      lis[i].onclick = function() {
        // 1. 上的模块选项卡,点击某一个,当前这一个底色会是红色,其余不变(排他思想) 修改类名的方式

        // 清除其他选项卡的样式
        for (var i = 0; i < lis.length; i++) {
          lis[i].className = '';
        }
        // 单独设置自己的样式 
        this.className = 'current';

        // 2. 下面的显示内容模块
        var index = this.getAttribute('index');
        // 让其余的item 这些div 隐藏
        for (var i = 0; i < items.length; i++) {
          items[i].style.display = 'none';
        }
        // 让对应的item 显示出来
        items[index].style.display = 'block';
      }
    }
  </script>
</body>

</html>

运行效果:

JavaScript TAB栏切换效果的示例

以上就是JavaScript TAB栏切换效果的示例的详细内容,更多关于JavaScript TAB栏切换效果的资料请关注三水点靠木其它相关文章!

Javascript 相关文章推荐
JavaScript 判断浏览器是否支持SVG的代码
Mar 21 Javascript
为JS扩展Array.prototype.indexOf引发的问题探讨及解决
Apr 24 Javascript
Node.js编码规范
Jul 14 Javascript
js使用正则实现ReplaceAll全部替换的方法
Jul 18 Javascript
node.js入门实例helloworld详解
Dec 23 Javascript
深入理解JavaScript中的对象复制(Object Clone)
May 18 Javascript
解决Vue使用mint-ui loadmore实现上拉加载与下拉刷新出现一个页面使用多个上拉加载后冲突问题
Nov 07 Javascript
前端html中jQuery实现对文本的搜索功能并把搜索相关内容显示出来
Nov 14 jQuery
详解从0开始搭建微信小程序(前后端)的全过程
Apr 15 Javascript
Vue实现微信支付功能遇到的坑
Jun 05 Javascript
vue element 中的table动态渲染实现(动态表头)
Nov 21 Javascript
vue+springboot实现登录验证码
May 27 Vue.js
nuxt 页面路由配置,主页轮播组件开发操作
Nov 05 #Javascript
JS时间戳与日期格式互相转换的简单方法示例
Jan 30 #Javascript
JS如何调用WebAssembly编译出来的.wasm文件
Nov 05 #Javascript
nuxt.js写项目时增加错误提示页面操作
Nov 05 #Javascript
Vue实现Header渐隐渐现效果的实例代码
Nov 05 #Javascript
Nuxt pages下不同的页面对应layout下的页面布局操作
Nov 05 #Javascript
Vue2.x和Vue3.x的双向绑定原理详解
Nov 05 #Javascript
You might like
php对gzip文件或者字符串解压实例参考
2008/07/25 PHP
PHP用反撇号执行外部命令
2015/04/14 PHP
PHP函数超时处理方法
2016/02/14 PHP
基于ThinkPHP删除目录及目录文件函数
2020/10/28 PHP
javascript function、指针及内置对象
2009/02/19 Javascript
JavaScript类库D
2010/10/24 Javascript
分享10篇优秀的jQuery幻灯片制作教程及应用案例
2011/04/16 Javascript
TreeView 用法(有代码)(asp.net)
2011/07/15 Javascript
Js sort排序使用方法
2011/10/17 Javascript
基于MVC3方式实现下拉列表联动(JQuery)
2013/09/02 Javascript
设置checkbox为只读(readOnly)的两种方式
2013/10/11 Javascript
jquery通过a标签删除table中的一行的代码
2013/12/02 Javascript
jQuery构造函数init参数分析续
2015/05/13 Javascript
浅谈json取值(对象和数组)
2016/06/24 Javascript
jQuery表单验证简单示例
2016/10/17 Javascript
BootStrap框架中的data-[ ]自定义属性理解(推荐)
2017/02/14 Javascript
ES6新特性五:Set与Map的数据结构实例分析
2017/04/21 Javascript
vue实现前进刷新后退不刷新效果
2018/01/26 Javascript
浅谈vuepress 踩坑记
2018/04/18 Javascript
node跨域转发 express+http-proxy-middleware的使用
2018/05/31 Javascript
vue-router 源码实现前端路由的两种方式
2018/07/02 Javascript
小程序图片剪裁加旋转的示例代码
2018/07/10 Javascript
详解python函数传参是传值还是传引用
2018/01/16 Python
PyQt5如何将.ui文件转换为.py文件的实例代码
2020/05/26 Python
python字符串拼接+和join的区别详解
2020/12/03 Python
浅谈Python xlwings 读取Excel文件的正确姿势
2021/02/26 Python
CSS3 Media Queries(响应式布局可以让你定制不同的分辨率和设备)
2013/06/06 HTML / CSS
IE9下html5初试小刀
2010/09/21 HTML / CSS
html5使用canvas压缩图片的示例代码
2018/09/11 HTML / CSS
酒店管理毕业生自我鉴定
2014/03/02 职场文书
竞选班委演讲稿
2014/04/28 职场文书
党性锻炼的心得体会
2014/09/03 职场文书
党员教师四风自我剖析材料
2014/09/30 职场文书
机关作风建设心得体会
2014/10/22 职场文书
幼儿园园长个人总结
2015/03/02 职场文书
三严三实·严以用权心得体会
2016/01/12 职场文书