* index.html

<!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>js + css 实现标签内容切换功能</title>
<link type="text/css" rel="stylesheet" href="./css/style.css" />
</head> <body>
<ul id="list-title">
<li class="list-item list-item-checked">1</li>
<li class="list-item">2</li>
<li class="list-item">3</li>
</ul>
<div id="content-box">
<div class="contents contents-checked">content_1</div>
<div class="contents">content_2</div>
<div class="contents">content_3</div>
</div>
<script type="text/javascript" src="./js/switchTabs.js"></script>
<script>
switchTabs(".list-item", ".contents", "list-item-checked", "contents-checked");
</script>
</body> </html>

  

* css/style.css

#list-title {
height: 60px;
margin: 0;
padding: 0;
list-style-type: none;
} .list-item {
float: left;
width: 100px;
height: 50px;
margin: 2px;
line-height: 50px;
font-size: 28px;
text-align: center;
border: 1px solid #ccc;
cursor: pointer;
} .list-item-checked {
background-color: #70adff;
color: #ffffff;
} #content-box {
position: relative;
clear: both;
margin: 0 2px;
} .contents {
position: absolute;
left: 0;
top: 0;
width: 312px;
height: 300px;
font-size: 32px;
line-height: 300px;
text-align: center;
border: 1px solid #ccc;
z-index: 0;
opacity: 0;
visibility: hidden;
-webkit-transition: all .5s;
-moz-transition: all .5s;
-ms-transition: all .5s;
-o-transition: all .5s;
transition: all .5s;
} .contents-checked {
z-index: 1;
opacity: 1;
visibility: visible;
} #content-box > .contents:first-child {
background-color: #c8ff40;
} #content-box > .contents:nth-child(2) {
background-color: #41ff6f;
} #content-box > .contents:nth-child(3) {
background-color: #ff82a0;
}

  

* js/switchTabs.js

/*
* tab:用于触发事件的标签的selector;
* content:内容容器的类名;
* ts:标签为选中状态时的样式;
* cs:内容容器为选中状态时的样式;
* 检查元素的类名列表中是否有指定的类名,如果有则移除,如果没有则添加;
* */
function switchTabs(tab, content, ts, cs) {
var tabs = document.querySelectorAll(tab),
contents = document.querySelectorAll(content),
last = 0; // 上一次选中元素的index tabs.forEach(function (tab, i) {
(function (i) {
tab.onclick = function () {
tabs[last].classList.remove(ts);
contents[last].classList.remove(cs);
last = i; this.classList.add(ts);
contents[i].classList.add(cs);
}
})(i);
}); }

  

javascript 标签切换的更多相关文章

  1. 每天一个JavaScript实例-tab标签切换

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  2. 使用SuperSlide 实现标签切换

    小颖之前还写过一篇jquery实现标签切换的文章  jquery实现Tab选项卡菜单 今天小颖逛博客园时看到了用SuperSlide 实现标签切换的文章,所以小颖就自己试了下,试了后发现SuperSl ...

  3. JS特效之Tab标签切换

    在我们平时浏览网站的时候,经常看到的特效有图片轮播.导航子菜单的隐藏.tab标签的切换等等.这段时间学习了JS后,开始要写出一些简单的特效.今天我也分享一个简单tab标签切换的例子.先附上代码: HT ...

  4. Bootstrap——设置Tab标签切换

    最近一个小项目需要用Tab标签切换显示不同div内容,用到了Bootstrap里面的东西,但是在Bootstrap3教程里却没有找到对应的代码,这里记录一下,方便以后快速查阅学习. 代码如下: < ...

  5. CSS和JavaScript标签style属性对照表

    CSS和JavaScript标签style属性对照表一般情况是把"-"去掉,后面字母用大写. CSS语法 (不区分大小写) JavaScript语法 (区分大小写) border ...

  6. 标签切换JS代码

    //标签切换 var nav = $('.index-nav'); var content = $('.index-nav-content li'); function hoverNav ($eleA ...

  7. 实例:jQuery实现标签切换

    具体实现效果如图: 原理很简单,就是监听鼠标滑动和点击事件.在第一个标签切换的示例中,当鼠标滑过某个标签时,就把class转移到当前标签.这里用到的jQuery方法主要是each()确定当前是哪一个标 ...

  8. JS 实现 Tab标签切换功能

    Tab标签切换 效果图: HTML部分: <div class="wrap">     <ul id="tag">       < ...

  9. 利用JavaScript来切换样式表

    切换样式表 html页 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http:/ ...

随机推荐

  1. HttpClient调用doGet、doPost、JSON传参及获得返回值

    调用 doPost:map传参 Map<String,Object> map = new HashMap<>(); map.put("test"," ...

  2. MATLAB—常用控制流

    文章目录 一.MATLAB控制流与C语言的区别 二.if-else-end 判断 1.使用方法 2.例题 三.switch-case 分支 1.使用方法 2.例题 四.for.while循环 1.使用 ...

  3. stm32 串口接收一次后再也无法接受,接受都为0

    经检测为串口接受后进入别的程序,开辟了2048的临时数组,因为堆栈溢出.stm32总共堆栈为

  4. CGO入门和OCR文字识别(非第三方API,有源码,效果好)实战

    这是我参与8月更文挑战的第5天,活动详情查看:8月更文挑战 系列文章见: [第四天] GDB调试指南:C++中如何调试生产环境的程序? [第三天] IM敏感词算法原理和实现 [第二天] 现代IM架构研 ...

  5. 【AI】PytorchSegmentCode

    From: https://liudongdong1.github.io/ 0. 基础配置 0.1. 设置随机种子 def set_seeds(seed, cuda): ""&qu ...

  6. 数学log的基本知识

    在数学中,对数是对求幂的逆运算,正如除法是乘法的倒数,反之亦然.这意味着一个数字的对数是必须产生另一个固定数字(基数)的指数, 在简单的情况下,乘数中的对数计数因子.如果a的x次方等于N(a>0 ...

  7. spring boot集成pagehelper(两种方式)

    当spring boot集成好mybatis时候需要进行分页,我们首先添加maven支持 <dependency> <groupId>com.github.pagehelper ...

  8. 用宏实现HEX到ASCII ,ASCII 到HEX

    #define HEX2ASCII(value, data)  do{  \            value = (value > 0x09)?(value+0x7):value; \     ...

  9. JDBC中的元数据——2.参数元数据

    package metadata; import java.sql.Connection; import java.sql.ParameterMetaData; import java.sql.Pre ...

  10. 刷题-力扣-337. 打家劫舍 III

    337. 打家劫舍 III 题目链接 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/house-robber-iii 著作权归领扣网络所有.商 ...