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 相关文章推荐
Extjs Ajax 乱码问题解决方案
Apr 15 Javascript
jquery ready函数、css函数及text()使用示例
Sep 27 Javascript
js 动态加载事件的几种方法总结
Dec 25 Javascript
jQuery实现鼠标点击弹出渐变层的方法
Jul 09 Javascript
Vue.JS入门教程之处理表单
Dec 01 Javascript
妙用Angularjs实现表格按指定列排序
Jun 23 Javascript
vue数组对象排序的实现代码
Jun 20 Javascript
Vue中的Props(不可变状态)
Sep 29 Javascript
JS原型与继承操作示例
May 09 Javascript
Vuex的实战使用详解
Oct 31 Javascript
详解Vue中的MVVM原理和实现方法
Jul 15 Javascript
一起来了解一下JavaScript的预编译(小结)
Mar 01 Javascript
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
PHP5与MySQL数据库操作常用代码 收集
2010/03/21 PHP
PHP随机生成信用卡卡号的方法
2015/03/23 PHP
Zend Framework过滤器Zend_Filter用法详解
2016/12/09 PHP
PHP数组式访问接口ArrayAccess用法分析
2017/12/28 PHP
微信公众平台开发教程④ ThinkPHP框架下微信支付功能图文详解
2019/04/10 PHP
YII2框架中behavior行为的理解与使用方法示例
2020/03/13 PHP
解密效果
2006/06/23 Javascript
JS 分号引起的一段调试问题
2009/06/18 Javascript
JavaScript 捕获窗口关闭事件
2009/07/26 Javascript
JavaScript中“+”的陷阱深刻理解
2012/12/04 Javascript
100个不能错过的实用JS自定义函数
2014/03/05 Javascript
javascript折半查找详解
2015/01/26 Javascript
基于JQuery实现的跑马灯效果(文字无缝向上翻动)
2016/12/02 Javascript
基于vue实现网站前台的权限管理(前后端分离实践)
2018/01/13 Javascript
原生js实现省市区三级联动代码分享
2018/02/12 Javascript
基于vue-cli 打包时抽离项目相关配置文件详解
2018/03/07 Javascript
Bootstrap模态对话框用法简单示例
2018/08/31 Javascript
jQuery+vue.js实现的多选下拉列表功能示例
2019/01/15 jQuery
微信小程序修改checkbox的样式代码实例
2020/01/21 Javascript
Vue通过provide inject实现组件通信
2020/09/03 Javascript
[02:05:03]完美世界DOTA2联赛循环赛 LBZS VS Matador BO2 10.28
2020/10/28 DOTA
python字典操作实例详解
2017/11/16 Python
python中eval与int的区别浅析
2019/08/11 Python
Django接收照片储存文件的实例代码
2020/03/07 Python
Python批量获取并保存手机号归属地和运营商的示例
2020/10/09 Python
HTML5 Canvas玩转酷炫大波浪进度图效果实例(附demo)
2016/12/14 HTML / CSS
html2canvas截图空白问题的解决
2020/03/24 HTML / CSS
阿里健康大药房:阿里自营网上药店
2017/08/01 全球购物
美国轻奢时尚购物网站:REVOLVE(支持中文)
2020/07/18 全球购物
如何在.net Winform里面显示PDF文档
2012/09/11 面试题
七一表彰活动方案
2014/01/18 职场文书
人事助理自荐信
2014/02/02 职场文书
售后求职信范文
2014/03/15 职场文书
新年团拜会主持词
2014/04/02 职场文书
2014年机关党委工作总结
2014/12/11 职场文书
Oracle删除归档日志及添加定时任务
2022/06/28 Oracle