<!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;
} ul,
ol,
li {
list-style: none;
} .container {
width: 600px;
height: 400px;
border: 10px solid #333;
margin: 30px auto;
display: flex;
flex-direction: column;
} .container>ul {
width: 100%;
height: 40px;
display: flex;
} .container>ul>li {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
font-size: 30px;
color: #fff;
background-color: hotpink;
} .container>ul>li.active {
background-color: orange;
} .container>ol {
flex: 1;
position: relative;
} .container>ol>li {
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0; background-color: skyblue; color: #fff;
font-size: 100px;
display: flex;
justify-content: center;
align-items: center; display: none;
} .container>ol>li.active {
display: flex;
}
</style>
</head> <body> <div class="container">
<ul>
<li class="active">1</li>
<li id="1">2</li>
<li id="1">3</li>
</ul>
<ol>
<li class="active">1</li>
<li>2</li>
<li>3</li>
</ol>
</div> <script> function Tab(lab){
// 获取页面元素
this.ulLiObj = lab.querySelectorAll('ul > li');
this.olLiObj = lab.querySelectorAll('ol > li');
} Tab.prototype.tab = function () {
// 常量定义,用户无法修改
const _this = this;
// ulli添加点击事件
this.ulLiObj.forEach((item, index) => {
item.addEventListener('click', () => {
// 去除其他liclass属性
_this.ulLiObj.forEach((ele, index) => {
ele.removeAttribute('class');
// 去除对应olli的class
_this.olLiObj[index].removeAttribute('class');
})
// 给自己添加class
item.setAttribute('class', 'active');
// 给对应olli添加class
_this.olLiObj[index].setAttribute('class', 'active')
})
})
} let divObj = document.querySelector('.container');
let tab1 = new Tab(divObj);
tab1.tab(); </script>
</body> </html>

JS案例--Tab栏切换的更多相关文章

  1. JS实现 Tab栏切换案例

    要求:当鼠标点击上面相应的选项卡(tab),下面页面的内容也随之而改变. 结构分析: 全部的内容都放到一个大的盒子里面,盒子里面又可以分为上面和下面两个盒子. 上面的盒子放了 5个li,装着5个小的选 ...

  2. 原生 js 重点案例 [tab栏切换]

    代码示例 :  <!DOCTYPE html> <html lang="en"> <head> <meta charset="U ...

  3. js 实现tab栏切换效果

    效果图: 源码: <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...

  4. jQuery带有定时器的tab栏切换

    现在网上很多类似选项卡的切换,我们成为tab栏切换,比如下图: 新浪的tab栏切换 淘宝的tab栏切换 其中,新浪的tab栏鼠标放上去,可以快速的来回切换,但是如果采取ajax异步传输,不停去加载服务 ...

  5. tab栏切换制作

    tab栏切换制作 先上图 要求1:默认状态,第一个选项卡被选中,展示第一个选项卡的内容 策略:第一个选项卡默认有被选中的样式,第一个选项卡对应的display: block,其他的dispaly设为n ...

  6. dataTable tab栏切换时错位解决办法

    做后台管理类网站肯定要写列表,首选dataTable,功能强大 最近在做一个tab栏切换时发现了一个很诡异的事情:表头错位了! 主要时因为当table被隐藏后,table的header宽度会计算错乱, ...

  7. tab栏切换

    最简单的tab栏切换 html部分 <ul class="tab"> <li class="item">待支付(1)</li> ...

  8. ES6面向对象实现tab栏切换效果

    面向对象实现tab栏切换效果

  9. [javascript]switchTab:仿腾讯首页Tab栏切换js插件

    腾讯首页的每个新闻栏目都是一个tab选项卡切换,属于延迟动作的:鼠标hover上去之后200毫秒才会切换,防止了因为浏览滑动导致的页面上选项卡的频繁切换.仿照这样的效果,自己写了一个js插件,实现了低 ...

随机推荐

  1. mave常用指令

    Maven常用命令有以下几种: 清理 maven clean 测试 maven test 编译 maven compile 打包 maven package 部署 maven install 第一个m ...

  2. 【洛谷P3835】 【模板】可持久化平衡树

    可持久化非旋转treap,真的是又好写又好调 ~ code: #include <cstdio> #include <cstdlib> #include <algorit ...

  3. PEPE规范 和 垃圾回收

    目录 1.python解释器的种类及特点 2.PEP8规范 3.解释型语言和编译型语言 4.bit.B.KB.MB.GB的关系 5.列举你所了解到python2和python3的区别 6.is和==的 ...

  4. zy的日志报表执行有问题。crontab显示执行了任务,代码中应该有问题

    crontab定时任务在日志记录中是执行了 但是在执行脚本的过程中报错了, 找不到问题原因,以后也要在脚本中加入日志记录, 但是奇怪的是在中午和晚上是正常的, 应该是那个时间段的判断逻辑有问题,导致程 ...

  5. innerHTML, innerText, outerHTML, outerText的区别

    innerHTML:返回标签内部嵌套的子元素的所有html标签+文本内容content. innerText:返回标签内部嵌套的子元素的文本内容content. outerHTML:返回标签本身+嵌套 ...

  6. maven 依赖优化

    1.mvn dependency:list  列出项目用到的依赖 2.查看依赖树 mvn dependency:tree 3.mvn dependency:analyze Used undeclare ...

  7. Alpha冲刺(9/10)——2019.5.1

    作业描述 课程 软件工程1916|W(福州大学) 团队名称 修!咻咻! 作业要求 项目Alpha冲刺(团队) 团队目标 切实可行的计算机协会维修预约平台 开发工具 Eclipse 团队信息 队员学号 ...

  8. Ognl 语法基础教程

    本文将力求用最简单的语言和实例,介绍一下 OGNL 的语法规则,文章主要内容参考自官方文档http://commons.apache.org/proper/commons-ognl/language- ...

  9. fio压测

    目录 fio工具介绍 参数介绍 测试举例 模板如下: 四路服务器测试的小tips fio工具介绍 用于测试存储设备IO性能. 当存储设备中存在用户数据时,严谨使用fio进行写操作!!! 参数介绍 rw ...

  10. SpringBoot工程常见报错汇总

    1.Springboot测试类运行报错 java.lang.IllegalStateException: Unable to find a @SpringBootConfiguration, you ...