如何使用 JavaScript/jQuery 为网站创建暗/亮模式?

如何使用 javascript/jquery 为网站创建暗/亮模式?

深色模式对于任何网站都非常重要。不同兴趣的用户访问网站。有些人喜欢深色模式,有些人喜欢浅色模式。

根据一项调查,大约 70% 到 80% 的人喜欢深色模式,只有 20% 到 30% 的人喜欢浅色模式。因此,有必要为任何网站创建一个深色模式,允许用户在深色和浅色模式之间切换。

下面,我们将使用 HTML、CSS 和 JavaScript 创建一个简单的网页。此外,我们还将学习使用 JavaScript 和 CSS 实现明暗模式。

语法

用户可以按照以下语法在深色和浅色主题之间切换。

立即学习“Java免费学习笔记(深入)”;

body.classList.toggle("dark-theme");

在上面的语法中,我们将深色主题类名作为切换方法的参数传递。它在特定的 HTML 元素中添加和删除类。

算法

用户可以按照以下算法在深色和浅色主题之间切换。

第 1 步 – 为网页编写 HTML 代码,并像往常一样为浅色主题应用 CSS。

第 2 步 – 使用 CSS 创建深色主题的样式。

AIBox 一站式AI创作平台 AIBox 一站式AI创作平台

AIBox365一站式AI创作平台,支持ChatGPT、GPT4、Claue3、Gemini、Midjourney等国内外大模型

AIBox 一站式AI创作平台 31 查看详情 AIBox 一站式AI创作平台

第 3 步 – 创建一个按钮,并在按钮中添加 onclick 事件。当用户单击该按钮时,它应该在深色和浅色主题之间切换。

步骤 4 – 要在深色和浅色主题之间切换,我们可以从元素中添加和删除特定的类。例如,为深色主题创建一个类,并为深色主题创建 CSS。当我们在body中添加dark-theme类时,深色主题应该应用于整个网站,当我们删除它时,它应该是正常的。

示例 1

在下面的示例中,当用户单击按钮时,我们调用changeMode()函数。 changeMode() 函数根据主题更改按钮的文本。

此外,我们使用 document.body 访问整个网页,并使用 JavaScript 将 dark-theme 类添加到整个网页,以将主题更改为深色模式。

         body {         color: black;         background-color: rgb(241, 241, 241);         text-align: center;         justify-content: center;      }      .dark-theme {         color: white;         background-color: rgb(26, 20, 20);      }      button {         width: 13rem;         height: 2rem;         font-size: 1.5rem;         background-color: aqua;         border: none;         border-radius: 12px;      }      p {         font-size: 1.2rem;      }      

Using the toggle method to toggle between light and dark mode in JavaScript.

This is the content of the webpage.

function changeMode() { var body = document.body; // toggle the theme body.classList.toggle("dark-theme"); let button = document.getElementById('button'); // change the button text if (button.innerHTML == "Dark Mode") { button.innerHTML = "Normal Mode"; } else { button.innerHTML = "Dark Mode" } }

示例 2

在下面的示例中,我们使用 HTML 和 CSS 创建了切换开关按钮。我们使用了切换开关的复选框。因此,每当用户选中该复选框时,开关就会打开。因此,我们可以根据是否选中该复选框来添加和删除深色主题的类。

此外,我们还使用了JQuery的addClass()和removeClass()方法来添加和删除主体中的类。

         body {         color: black;         background-color: rgb(241, 241, 241);         text-align: center;         justify-content: center;      }      .dark-class {         color: white;         background-color: rgb(12, 10, 10);      }      p {         font-size: 1.2rem;      }      .toggleButton {         width: 5rem;         height: 2rem;         position: relative;         display: inline-block;      }      .toggleButton input {         opacity: 0;      }      .roundButton {         background-color: black;         top: 0;         left: 0;         position: absolute;         right: 0;         bottom: 0;         cursor: pointer;      }      .roundButton:before {         left: 0;         bottom: 0;         position: absolute;         content: "";         background-color: grey;         transition: 1s;         height: 2rem;         width: 2rem;      }      input:checked+.roundButton {         background-color: white;      }      input:checked+.roundButton:before {         transform: translateX(3rem);      }      .roundButton.circle {         border-radius: 2rem;      }      .roundButton.circle:before {         border-radius: 50%;      }          

Using the JQuery to toggle between light and dark modes in JavaScript.

This is the content of the webpage.

// If the input checkbox is checked, activate dark mode by adding dark-class to the body $('#toggle').change(() => { if ($('#toggle').is(":checked")) { $("body").addClass("dark-class"); } else { $("body").removeClass("dark-class") } })

我们学会了使用 JavaScript 和 JQuery 在深色模式和浅色模式之间进行切换。我们需要更改网页的 CSS 并将 CSS 应用于深色主题。我们可以通过在网页中添加和删除类来将 CSS 应用到暗模式。

以上就是如何使用 JavaScript/jQuery 为网站创建暗/亮模式?的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/529063.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
马斯克返老还童?实际是AI生成的本人婴儿照
上一篇 2025年11月9日 09:35:17
。 K 连续位翻转的最小次数
下一篇 2025年11月9日 09:35:18

相关推荐

  • 360手机浏览器怎么解绑 修改绑定手机号方法

    360手机浏览器怎么解绑 修改绑定手机号方法360手机浏览器怎么解绑 修改绑定手机号方法360手机浏览器怎么解绑 修改绑定手机号方法360手机浏览器怎么解绑 修改绑定手机号方法

    首先,我们启动360浏览器,并完成账号的登录操作。如下图所示: 接下来,点击页面右上角的用户头像,进入个人中心界面。选择“个人中心”选项,如图所示: 成功进入个人中心后,系统将展示一系列设置选项。找到并点击“更改手机”功能。如下图所示: 在点击“更改手机”后,系统会要求输入验证码。此时,当前绑定的手…

    2026年9月6日 用户投稿
    100
  • 安装Win10系统的电脑配置太低怎么办?

    目前,许多电脑用户都打算将操作系统升级到win10版本,但又担心自己的设备硬件规格较低,无法流畅运行新系统。实际上,win10对电脑的要求并不算特别高。那么具体有多低呢?接下来就为大家详细说明一下。当然,对于那些硬件配置确实偏低的用户来说,这里也提供了一些应对办法! Win10系统所需的最低配置标准…

    2026年9月6日
    000
  • 详细教程:华为手机如何实现投屏到电视机

    在当今社会中,手机已经成为人们生活中不可或缺的重要工具。随着技术的不断发展,手机功能也在不断升级,其中投屏功能成为越来越受欢迎的特性之一。华为手机作为市场上颇受欢迎的品牌之一,其投屏功能也备受用户关注。本文将详细介绍如何将华为手机投屏到电视机,并提供一些实用的技巧和注意事项,让您能够轻松实现投屏的操…

    用户投稿 2026年9月6日
    000
  • 利用ThinkPHP6实现消息队列

    随着互联网及大数据时代的到来,消息队列成为了业务开发和数据处理中不可或缺的一部分。而在php领域,thinkphp框架一直是开发者们的热门选择。本文将介绍如何利用thinkphp6实现消息队列,并为大家提供一些实用的代码实例。 安装消息队列扩展 在开始制作消息队列之前,我们需要安装一个消息队列扩展(…

    用户投稿 2026年9月6日
    000
  • 原神雨阵奔流之述演第九关通关攻略 压制机关破解技巧

    原神雨阵奔流之述演第九关通关攻略 压制机关破解技巧原神雨阵奔流之述演第九关通关攻略 压制机关破解技巧原神雨阵奔流之述演第九关通关攻略 压制机关破解技巧原神雨阵奔流之述演第九关通关攻略 压制机关破解技巧

    雨阵奔流之述演的第九关“如从山间落下的雨滴”,仿佛将你置身于一场急骤的山雨之中。敌方据点中心那座巨大的压制特化型机关,如同暴雨中的惊雷,散发着压倒性的威胁感。它的存在让每一次部署都变得至关重要,稍有不慎就会功亏一篑。别担心,深呼吸,掌握以下策略精髓,你便能在这场战略暴雨中稳步前行,直至拨云见日! 核…

    2026年9月6日 用户投稿
    000
  • 美团0元喝奶茶活动入口_美团免费奶茶活动参与方法

    答案:通过搜索“惊喜333”或“惊喜666”进入活动页领取0元券,参与“膨胀红包”抽奖、在“神抢手”专区抢购低价券,叠加津贴实现免单,或关注明星联动活动领取通兑券,即可免费喝奶茶。 如果您想在美团享受免费奶茶,但不清楚如何获取相关优惠,可能是错过了活动入口或领取方式。以下是参与美团0元喝奶茶活动的具…

    2026年9月6日
    000
  • 如何使用家庭、不同位置和计时器的签到

    如何使用家庭、不同位置和计时器的签到如何使用家庭、不同位置和计时器的签到如何使用家庭、不同位置和计时器的签到如何使用家庭、不同位置和计时器的签到

    如何让别人知道你到达了目的地 告知他人已安全到达目的地是最常见的“签到”方式,且操作简便。以下是在准备开始下一段旅程前设置的步骤。 打开消息与要向其发送签到的人进行对话点击消息字段旁边的加号 (+) 图标点击签到点击提示底部的编辑输入您要去的目的地选择右上角的“完成”,然后发送“签入” 在输入您的目…

    2026年9月6日 用户投稿
    000
  • 传小米汽车上周交付量约7500辆 本月预计交付2.6万辆

    小米汽车1月交付量与订单量差距缩小,但交付压力依然巨大!网传数据显示,小米汽车在2025年第四周新增订单约7800份,总交付量约7500辆。虽然差距正在缩小,但产能问题依然严峻。 ☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜ 为提高生产效率…

    2026年9月6日
    100
  • 如何使用ThinkPHP6的命令行工具

    如何使用thinkphp6的命令行工具 ThinkPHP6是一款开源的PHP框架,它具有丰富的功能和易于使用的特性。其中,命令行工具是ThinkPHP6的一个重要功能,在开发过程中可以提高开发效率和便捷性。本文将介绍如何使用thinkphp6的命令行工具。 安装ThinkPHP6 首先,需要安装Th…

    用户投稿 2026年9月6日
    000
  • framework4.0怎么安装 下载教程指南

    framework4.0怎么安装 下载教程指南framework4.0怎么安装 下载教程指南framework4.0怎么安装 下载教程指南framework4.0怎么安装 下载教程指南

    windows系统在运行某些程序或安装软件时,经常会提示需要.net framework 4.0环境支持。若系统中未安装该组件,可能导致应用程序无法启动或运行异常。本文将为你提供详细的.net framework 4.0安装指南,帮助你轻松解决因缺少运行库而导致的问题。 一、.NET Framewo…

    2026年9月6日 用户投稿
    100
  • 正确在Groovy脚本中调用返回URL的方法并用于Shell命令

    本文旨在解决在groovy脚本中调用返回url的方法后,如何在后续的shell命令中正确使用该url的问题。通过详细阐述groovy字符串插值的机制,并提供正确的代码示例,帮助读者避免“could not resolve host”等常见错误,确保动态生成的url能够被shell命令正确解析和执行。…

    2026年9月5日
    400
  • 百家号视频尺寸比例是多少?百家号的视频比例是多少

    在当今这个短视频盛行的时代,百家号作为一款热门的短视频平台,吸引了大量用户入驻。不少用户在制作视频时,常常会遇到一个难题:百家号视频尺寸比例是多少?这篇文章将为你揭秘百家号视频尺寸比例,并教你如何制作出符合标准的完美视频尺寸。 一、百家号视频尺寸比例 百家号视频尺寸比例有三种:横版、竖版和方形。下面…

    2026年9月5日
    000
  • 为什么iPhone6Plus升级后屏幕失灵如何强制重启?按电源键和主页键10秒重启

    首先尝试强制重启设备,若无效则充电30分钟后再试,最后可通过连接电脑使用恢复模式重新安装系统固件以解决iPhone 6 Plus升级后屏幕失灵问题。 如果您的 iPhone 6 Plus 在系统升级后出现屏幕失灵的情况,可能是由于系统临时故障或软件冲突导致设备无响应。以下是解决此问题的步骤: 本文运…

    2026年9月5日
    000
  • win10投影仪如何设置?win10投影仪设置详细介绍

    一、准备工作 在开始配置Win10系统连接投影仪之前,请确保你拥有以下设备: 1. 一台运行Windows 10系统的电脑 2. 一台可用的投影设备 3. 一根HDMI或VGA信号线 4. 投影使用的幕布或平整墙面 二、操作步骤 1. 连接设备:使用HDMI或VGA线将电脑与投影仪正确连接,并确认接…

    2026年9月5日
    000
  • Linux基础–正确使用Linux

    一、samba服务 Samba服务主要用于Linux服务器给Windows用户分享文件用 配置服务器都需要以下5步操作 1.准备环境 1)关闭防火墙    systemctl stop firewalld 2)临时关闭selinux sentenforce 0  或者在配置文件中永久关闭selinu…

    用户投稿 2026年9月5日
    100
  • Vue Router keepAlive结合v-if,离开页面为何仍触发mounted钩子?

    Vue Router 中 keep-alive 与 v-if 结合使用,导致离开页面后仍触发生命周期钩子的问题及解决方案 在 Vue Router 中, 组件用于缓存组件实例,避免组件销毁和重新创建带来的性能损耗。然而,当 与 v-if 结合使用时,切换路由后,即使使用了 ,mounted 等生命周…

    2026年9月5日
    000
  • 抖音的群怎么私信一个人?私信一个人能看到吗?

    在使用抖音群聊时,不少用户都希望了解如何单独向某位成员发送私信。这不仅涉及具体操作流程,还与隐私设置密切相关。那么,究竟该如何在抖音群里私信一个人呢? 一、如何在抖音群聊中私信某人? 进入目标群聊页面首先确认你已加入该群。打开抖音App,点击底部“消息”标签,找到并进入你想操作的群聊界面。群聊会话通…

    2026年9月5日
    000
  • MySQL数据查询之连接查询

    连接关系是关系数据库模型的主要特点。也是最主要的查询,主要包括内连接、外连接等。通过连接运算符可以实现多个表查询。在关系数据库管理系统中,表建立时各数据之间的关系不必确定,常把一个实体的所有信息存放在一个表中。当查询数据时,通过连接操作查询出存放在多个表中不同实体的信息。当两个或多个表中存在相同意义…

    2026年9月5日
    100
  • 关闭win10自带杀毒软件

    在运行窗口中输入 gpedit.msc 并按回车键确认,导航至“计算机配置” – “管理模板” – “windows组件” – “microsoft defender 防病毒”。在右侧菜单中,双击“关闭microsoft defender 防病毒”选项,将其配置为…

    2026年9月5日
    000
  • appdata文件夹在哪里 一文告诉你答案

    appdata文件夹在哪里 一文告诉你答案appdata文件夹在哪里 一文告诉你答案appdata文件夹在哪里 一文告诉你答案appdata文件夹在哪里 一文告诉你答案

    在windows系统中,appdata是一个默认隐藏的系统目录,主要用于保存各类应用程序的配置信息、用户偏好设置、缓存数据以及其他与用户账户相关的运行文件。由于其重要性,该文件夹被系统自动隐藏,以避免误操作。然而,许多用户对其位置和功能并不熟悉。接下来,我们将详细解读appdata的相关知识。 一、…

    2026年9月5日 用户投稿
    200

发表回复

登录后才能评论
关注微信