JavaScript如何实现标签页切换效果

技术JavaScript如何实现标签页切换效果小编给大家分享一下JavaScript如何实现标签页切换效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了

边肖想和大家分享一下JavaScript是如何实现标签切换效果的。相信大部分人还是不太了解。因此,我想分享这篇文章供你参考。希望你看完这篇文章后收获多多。让我们一起来看看。

构建主体界面

JavaScript如何实现标签页切换效果

HTML代码

h2实现tab/H2的切换效果。

舒利='tab '

Liahref='影视/a/li。

Liahref='娱乐/a/li。

Liahref='电视剧/a/li。

/ul

divided=' content '

Divid='content1 '最新电影推荐:br 《速度与激情》 br 《超能陆战队》 /div。

Divid='content2 '热门娱乐推荐:br 《奔跑吧兄弟》 br 《中国好声音》 /div。

Divid='content3 '热门电视剧推荐:br 《三生三世》 br 《我们的少年时代》 /div。

/divJavaScript如何实现标签页切换效果

编写 CSS 文件

创建一个新的CSS文件,并编写CSS代码来呈现之前编写的HTML界面。

记得把编译好的CSS文件引入到HTML文件中。

Link rel='样式表' href=' mcss.css' CSS文件代码。

*{

margin:0

划水:0;

}

#tab{

飞越:隐藏;

}

# tabli @

float:left

list-style : none;

宽度:80 px;

高度:40 px;

文本对齐:居中;

}

# tabli:first第一个孩子,#content1{

背景# ffcc00

}

# tabli:first第一个孩子li,#content2{

背景# ff00cc

}

#tabli:last-child,#content3{

背景# 00ccff

}

# tablia @

线高:40 px;

颜色:白色;

(=NationalBureauofStandards)国家标准局

p;   text-decoration: none;
}
 
#content {
    position: relative;
}
 
#content1, #content2, #content3 {
    width: 300px;
    height: 100px;
    position: absolute;
    top: 0;
    left: 0;
    padding: 30px;
    display: none;
}
 
#content1{
    display: block;
}

JavaScript如何实现标签页切换效果

编写 JavaScript 脚本文件,实现切换效果

JavaScript 代码

// 当点某一个标签的时候对应的 div 显示,其他的隐藏。
// 查找触发事件的元素
var as = document.querySelectorAll("#tab a");
// 绑定事件处理函数
for (var i = 0; i < as.length; i++) {
    as[i].onclick = function () {
        // 隐藏所有的 div
        var divs = document.querySelectorAll("#content>div");
        for (var i = 0; i < divs.length; i++) {
            divs[i].style.display = "none";
        }
        // 让对应的 div显示
        // 获取当前的 a 的 href
        var i = this.href.lastIndexOf("#");
        var id = this.href.slice(i);
        console.log(id)
        document.querySelector(id).style.display = "block";
    }
 
}

JavaScript如何实现标签页切换效果

完整案例代码

mHTML.html

<link rel="stylesheet" href="mCSS.css" >
 
<h2>实现标签页的切换效果</h2>
<ul id="tab">
    <li><a href="#content1" >影视</a></li>
    <li><a href="#content2" >娱乐</a></li>
    <li><a href="#content3" >电视剧</a></li>
</ul>
<div id="content">
    <div id="content1">最新电影推荐:<br>《速度与激情》<br> 《超能陆战队》</div>
    <div id="content2">火爆娱乐推荐:<br>《奔跑吧兄弟》<br> 《中国好声音》</div>
    <div id="content3">热门电视剧推荐:<br>《三生三世》<br> 《我们的少年时代》</div>
</div>
 
 
<script src="mJS.js"></script>

mCSS.css

*{
    margin: 0;
    padding: 0;
}
 
#tab {
    overflow: hidden;
}
 
#tab li {
    float: left;
    list-style: none;
    width: 80px;
    height: 40px;
    text-align: center;
}
 
#tab li:first-child, #content1 {
    background: #ffcc00;
}
 
#tab li:first-child + li, #content2 {
    background: #ff00cc;
}
 
#tab li:last-child, #content3 {
    background: #00ccff;
}
 
#tab li a {
    display: block;
    width: 100%;
    height: 100%;
    line-height: 40px;
    color: white;
    text-decoration: none;
}
 
#content {
    position: relative;
}
 
#content1, #content2, #content3 {
    width: 300px;
    height: 100px;
    position: absolute;
    top: 0;
    left: 0;
    padding: 30px;
    display: none;
}
 
#content1{
    display: block;
}

mJS.js

// 当点某一个标签的时候对应的 div 显示,其他的隐藏。
// 查找触发事件的元素
var as = document.querySelectorAll("#tab a");
// 绑定事件处理函数
for (var i = 0; i < as.length; i++) {
    as[i].onclick = function () {
        // 隐藏所有的 div
        var divs = document.querySelectorAll("#content>div");
        for (var i = 0; i < divs.length; i++) {
            divs[i].style.display = "none";
        }
        // 让对应的 div显示
        // 获取当前的 a 的 href
        var i = this.href.lastIndexOf("#");
        var id = this.href.slice(i);
        console.log(id)
        document.querySelector(id).style.display = "block";
    }
 
}

以上是“JavaScript如何实现标签页切换效果”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/60760.html

(0)

相关推荐

  • mysqld got signal举例分析

    技术mysqld got signal举例分析这篇文章主要介绍“mysqld got signal举例分析”,在日常操作中,相信很多人在mysqld got signal举例分析问题上存在疑惑,小编查阅了各式资料,整理出

    攻略 2021年11月19日
  • 计算机网络-3-3-使用广播信道的数据链路层

    技术计算机网络-3-3-使用广播信道的数据链路层 计算机网络-3-3-使用广播信道的数据链路层使用广播信道的数据链路层
    广播信道可以进行一对多通信。
    局域网技术在计算机网络中占有非常重要的地位。
    局域网

    礼包 2021年11月9日
  • ESP32读取串口传感器数据

    技术ESP32读取串口传感器数据 ESP32读取串口传感器数据最近拿到一个九轴陀螺仪传感器,如图:该设备通过串口方式输出九轴数据,可用官方自带得上位机或者是sscom看到数据,官网提供了很多例程,但唯独

    礼包 2021年12月9日
  • DIV+CSS网页内容显示不完整诊断是这样的

    技术DIV+CSS网页内容显示不完整诊断是这样的DIV+CSS网页内容显示不完整诊断是这样的,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。本文和大家重点

    攻略 2021年11月11日
  • Windows的常用工具有几个

    技术Windows的常用工具有几个这篇文章给大家介绍Windows的常用工具有几个,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。哈喽,大家好,今天给大家分享几个好用的,提高办公办事效率的工具!(1)

    攻略 2021年10月22日
  • Vue 全家桶介绍-超详细教程

    技术Vue 全家桶介绍-超详细教程 Vue 全家桶介绍-超详细教程Vue 全家桶介绍-超详细教程Vue 全家桶介绍Vue有著名的全家桶系列,包含了vue-router(http://router.vue

    礼包 2021年10月27日