本文是我学习tab栏切换时的笔记,步骤很详细。比较适用于JavaScript初学者

1.基础 - 排他思想
如图,点击任意一个按钮,当前按钮应该显示橘色,其他显示默认颜色灰色。
代码运行步骤:
利用for循环遍历5个按钮;
选中的按钮进行 onclick 事件时,首先删除所有按钮的类名,使其全部显示灰色(34行);
然后给当前点击的按钮添加指定类名,使其显示橘色(37行)。
示例代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>tab栏切换效果</title>
<style media="screen">
*{
margin: 0;
padding: 0;
border: 0 none;
outline: none;
}
#btns{
width: 300px;
margin: 100px auto;
}
#btns button {
width: 60px;
height: 30px;
float: left;
border-right: 1px solid #ccc;
}
.color{
background-color: #eb923f;
}
</style>
<script type="text/javascript">
window.onload = function () {
var btns = document.getElementById("btns").getElementsByTagName("button");
for (var i = 0; i < btns.length; i++) {
btns[i].onclick = function () {
for (var j = 0; j < btns.length; j++) {
//把所有的button清空类名
btns[j].className = "";
}
//点击的那个盒子添加指定类名
this.className = "color";
}
}
}
</script>
</head>
<body>
<div id="btns">
<button class="color">按钮1</button>
<button>按钮2</button>
<button>按钮3</button>
<button>按钮4</button>
<button>按钮5</button>
</div>
</body>
</html>
2.tab栏切换
如图:在排他思想的基础上,五个按钮底下添加五个新盒子,并用一个大盒子将按钮和底下的盒子包裹。
底下的盒子全部隐藏,默认只显示第一个。
新增步骤:
为btns[i]添加自定义属性index,用来关联下面的大盒子(42行);
点击按钮后先让底下的盒子全部隐藏(54行);
然后给当前所点击按钮相关联的盒子添加指定属性(57行)。
示例代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>tab栏切换效果</title>
<style media="screen">
*{
margin: 0;
padding: 0;
border: 0 none;
outline: none;
}
.baohan{
width: 300px;
margin: 100px auto;
border: 1px solid #ccc;
}
#btns button {
width: 60px;
height: 30px;
float: left;
border-right: 1px solid #ccc;
}
#divs div {
width: 300px;
height: 100px;
font-size: 60px;
padding-top: 60px;
background-color: #eb923f;
text-align: center;
display: none;
}
.color{
background-color: #eb923f;
}
</style>
<script type="text/javascript">
window.onload = function () {
var btns = document.getElementById("btns").getElementsByTagName("button");
var divs = document.getElementById("divs").getElementsByTagName("div");
for (var i = 0; i < btns.length; i++) {
btns[i].index = i; //自定义属性,用于关联下面的大盒子
btns[i].onclick = function () {
for (var j = 0; j < btns.length; j++) {
//把所有的button清空类名
btns[j].className = "";
}
//点击的那个盒子添加指定类名
this.className = "color";
for (var i = 0; i < divs.length; i++) {
//先让底下的div全部隐藏
divs[i].style.display = "none";
}
//然后给当前所点击按钮相关联的盒子添加指定属性
divs[this.index].style.display = "block";
}
}
}
</script>
</head>
<body>
<div class="baohan">
<div id="btns">
<button class="color">按钮1</button>
<button>按钮2</button>
<button>按钮3</button>
<button>按钮4</button>
<button>按钮5</button>
</div>
<div id="divs">
<div style="display:block;">1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
</div>
</div>
</body>
</html>
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!
# tab切换原理
# tab栏切换
# tab切换的原理
# Vue.js组件tab实现选项卡切换
# Vue.js组件tabs实现选项卡切换效果
# 用AngularJS的指令实现tabs切换效果
# 原生js实现tab选项卡切换
# 一个精简的JS DIV层tab切换代码
# js(JavaScript)实现TAB标签切换效果的简单实例
# javascript实现tabs选项卡切换效果(自写原生js)
# 一个js的tab切换效果代码[代码分离]
# javascript实现tab切换的四种方法
# 基于jquery的tab切换 js原理
# 自定义
# 使其
# 相关联
# 如图
# 先让
# 清空
# 橘色
# 第一个
# 基础上
# 遍历
# 适用于
# 只显示
# media
# title
# utf
# head
# meta
# gt
# html
# charset
相关文章:
建站之星×万网:智能建站系统+自助建站平台一键生成
IOS倒计时设置UIButton标题title的抖动问题
东莞专业网站制作公司有哪些,东莞招聘网站哪个好?
装修招标网站设计制作流程,装修招标流程?
小建面朝正北,A点实际方位是否存在偏差?
如何快速生成橙子建站落地页链接?
如何在IIS管理器中快速创建并配置网站?
GML (Geography Markup Language)是什么,它如何用XML来表示地理空间信息?
建站之星如何修改网站生成路径?
C++如何编写函数模板?(泛型编程入门)
如何快速搭建个人网站并优化SEO?
宠物网站制作html代码,有没有专门介绍宠物如何养的网站啊?
完全自定义免费建站平台:主题模板在线生成一站式服务
如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?
如何快速查询域名建站关键信息?
定制建站方案优化指南:企业官网开发与建站费用解析
天津个人网站制作公司,天津网约车驾驶员从业资格证官网?
威客平台建站流程解析:高效搭建教程与设计优化方案
公司网站设计制作厂家,怎么创建自己的一个网站?
个人网站制作流程图片大全,个人网站如何注销?
安云自助建站系统如何快速提升SEO排名?
Swift中swift中的switch 语句
图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?
移民网站制作流程,怎么看加拿大移民官网?
如何在VPS电脑上快速搭建网站?
专业网站制作企业网站,如何制作一个企业网站,建设网站的基本步骤有哪些?
如何在宝塔面板创建新站点?
太原网站制作公司有哪些,网约车营运证查询官网?
香港服务器网站搭建教程-电商部署、配置优化与安全稳定指南
小米网站链接制作教程,请问miui新增网页链接调用服务有什么用啊?
武汉外贸网站制作公司,现在武汉外贸前景怎么样啊?
网站按钮制作软件,如何实现网页中按钮的自动点击?
广东企业建站网站优化与SEO营销核心策略指南
C++中的Pimpl idiom是什么,有什么好处?(隐藏实现)
建站主机助手选型指南:2025年热门推荐与高效部署技巧
临沂网站制作公司有哪些,临沂第四中学官网?
潍坊网站制作公司有哪些,潍坊哪家招聘网站好?
品牌网站制作公司有哪些,买正品品牌一般去哪个网站买?
盐城做公司网站,江苏电子版退休证办理流程?
如何构建满足综合性能需求的优质建站方案?
如何选择服务器才能高效搭建专属网站?
大连 网站制作,大连天途有线官网?
建站之星3.0如何解决常见操作问题?
b2c电商网站制作流程,b2c水平综合的电商平台?
建站之星云端配置指南:模板选择与SEO优化一键生成
宁波自助建站系统如何快速打造专业企业网站?
如何在Mac上搭建Golang开发环境_使用Homebrew安装和管理Go版本
上海网站制作网页,上海本地的生活网站有哪些?最好包括生活的各个方面的?
如何在Golang中指定模块版本_使用go.mod控制版本号
建站之星如何快速生成多端适配网站?
*请认真填写需求信息,我们会在24小时内与您取得联系。