js + css实现标签内容切换功能(实例讲解)

JS + CSS实现标签内容切换功能的完整攻略

1. HTML结构准备

首先,我们需要准备一个HTML结构,其中包含标签导航和内容区域。示例如下:

<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>标签内容切换</title>
  <link rel="stylesheet" href="style.css">
</head>
<body>
  <div class="tabs">
    <button class="tab" id="tab1">标签1</button>
    <button class="tab" id="tab2">标签2</button>
    <button class="tab" id="tab3">标签3</button>
  </div>
  <div class="content">
    <div id="content1" class="tab-content">标签1的内容</div>
    <div id="content2" class="tab-content">标签2的内容</div>
    <div id="content3" class="tab-content">标签3的内容</div>
  </div>
  <script src="script.js"></script>
</body>
</html>

2. CSS样式设置

在CSS文件中,我们可以设置标签导航的样式以及内容区域的显示方式。示例如下:

.tabs {
  display: flex;
  justify-content: center;
  margin-bottom: 20px;
}

.tab {
  background-color: #ccc;
  border: none;
  color: #fff;
  padding: 10px 20px;
  cursor: pointer;
}

.tab:hover {
  background-color: #aaa;
}

.tab-content {
  display: none;
}

.tab-content.active {
  display: block;
}

3. JavaScript实现标签内容切换

在script.js中,我们可以使用JavaScript来实现标签内容切换功能。首先,我们需要获取标签按钮和内容区域的元素,并为每个按钮添加点击事件监听器。当按钮被点击时,我们可以通过切换对应的内容区域的类名来实现内容的显示和隐藏。示例如下:

document.addEventListener('DOMContentLoaded', function() {
  const tabs = document.querySelectorAll('.tab');
  const tabContents = document.querySelectorAll('.tab-content');

  tabs.forEach(tab => {
    tab.addEventListener('click', function() {
      const target = this.id.replace('tab', 'content');

      // 隐藏所有内容区域
      tabContents.forEach(content => {
        content.classList.remove('active');
      });

      // 显示目标内容区域
      document.getElementById(target).classList.add('active');
    });
  });
});

示例说明:

  1. 假设我们有一个网页,包含3个标签,分别是标签1、标签2和标签3,每个标签对应的内容分别是“标签1的内容”、“标签2的内容”和“标签3的内容”。
  2. 当我们点击标签1时,显示“标签1的内容”,同时隐藏其他标签的内容。
  3. 当我们点击标签2时,显示“标签2的内容”,同时隐藏其他标签的内容。
  4. 当我们点击标签3时,显示“标签3的内容”,同时隐藏其他标签的内容。

以上的示例说明展示了如何使用JavaScript和CSS来实现标签内容切换功能,您可以根据自己的需要修改标签的数量和内容。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:js + css实现标签内容切换功能(实例讲解) - Python技术站

(0)
上一篇 2023年6月28日
下一篇 2023年6月28日

相关文章

  • rocketmq集群模式

    RocketMQ集群模式 简介 RocketMQ是一款开源、分布式、可扩展的消息系统,支持10M+的延迟消息,每日传输TB级别的消息。RocketMQ的集群模式可以达到高可用,水平扩展的目的,为业务系统提供大规模的实时消息解决方案。 集群模式 集群架构图 RocketMQ的集群模式采用主从复制的方式进行消息备份和高可用。如下图所示: 主从角色的划分 在Roc…

    其他 2023年3月28日
    00
  • javascript类型系统 Array对象学习笔记

    JavaScript类型系统 Array对象学习笔记 1. 创建数组 可以使用以下方法来创建一个数组: 使用数组字面量表示法:let arr = [1, 2, 3]; 使用Array构造函数:let arr = new Array(1, 2, 3); 使用Array.from方法:let arr = Array.from([1, 2, 3]); 示例代码: …

    other 2023年10月15日
    00
  • ASP常见错误详解及解决方案小结 推荐第1/2页

    下面我来为您详细讲解“ASP常见错误详解及解决方案小结 推荐第1/2页”的完整攻略。 1. 文章概述 该文介绍了 ASP 开发过程中常见的错误,并提供了相应的解决方案。主要包括以下几个方面: ASP 代码编写错误 IIS 服务器配置错误 数据库连接及操作错误 Windows 系统权限及组件问题 2. ASP代码编写错误 错误:VBScript 特殊符号错误 …

    other 2023年6月26日
    00
  • ios12 beta6固件在哪下载 ios12开发者预览版beta6固件下载地址大全

    首先需要澄清一下,iOS 12 beta6 固件只适用于已经注册成为 iOS 开发者的用户。如果你还没有注册成为开发者,那么你需要先注册并获取开发者账号才能下载和安装 iOS 12 beta6。 以下是 iOS 12 beta6 固件下载的完整攻略: 步骤一:登录苹果开发者中心 在浏览器中打开苹果开发者中心,并使用您的 Apple ID 登录。 步骤二:下载…

    other 2023年6月26日
    00
  • C++分析构造函数与析造函数的特点梳理

    C++分析构造函数与析造函数的特点梳理 构造函数 构造函数是C++中的一个重要概念,它是类中的特殊函数。在创建对象时,构造函数主要用于初始化该对象的各个成员变量,以确保这些变量的初值是合法有效的。 构造函数的特点梳理如下: 构造函数的函数名与类名相同,通常没有返回值; 构造函数可以是无参的,也可以是包含参数的,甚至构造函数也可以多个重载; 实例化对象时构造函…

    other 2023年6月26日
    00
  • Matlab实现时间序列预测分类实例代码

    当涉及到使用Matlab实现时间序列预测分类时,以下是一个完整的攻略,其中包含两个示例说明: 1. 数据准备 首先,需要准备时间序列数据集。确保数据集包含时间序列的观测值和相应的标签。可以使用Matlab的数据导入功能,如readtable或csvread,将数据加载到Matlab中。 示例说明1: 假设我们有一个包含每日气温观测值和天气类型标签的数据集。可…

    other 2023年10月18日
    00
  • Vue2.0 多 Tab切换组件的封装实例

    下面我将为您详细讲解“Vue2.0 多 Tab切换组件的封装实例”的完整攻略。 第一步:编写Tab组件的基本结构 首先,在编写多 Tab 切换组件之前,我们需要一些基本的结构,如: <template> <div class="tabs"> <div class="tabs-header"…

    other 2023年6月25日
    00
  • .htaccess文件

    当然,我很乐意为您提供有关.htaccess文件的完整攻略。以下是详细的步骤和两个示例: 1. 什么是.htaccess文件? .htaccess文件是一个Apache服务器配置文件,用于控制网站的行为。它可以用来重定向URL、设置访问权限、启用压缩、设置错误页面等等。.htaccess文件通常位于网站的根目录下。 2. .htaccess文件的基本用法 以…

    other 2023年5月6日
    00
合作推广
合作推广
分享本页
返回顶部