JS版网站风格切换实例代码

当你想为你的网站添加夜间模式或其他风格切换功能时,你可以使用JavaScript编写代码来实现。下面是一个JavaScript版本的网站风格切换实例代码,以及详细的操作步骤。

实现方法

HTML

首先,我们需要在HTML中添加用于切换风格的按钮,以及用于切换后替换网页风格的样式表。例如,在<head>标签中添加两个样式表:

<head>
  <link rel="stylesheet" href="day.css" id="dayStyle">
  <link rel="stylesheet" href="night.css" id="nightStyle" disabled>
</head>

关键点在于第二个样式表的disabled属性,这样刚开始进入页面时,夜间模式的样式表不会被加载。

<body>中添加按钮:

<body>
  <button onclick="swapStyles()">切换风格</button>
  <p>这是内容</p>
</body>

JavaScript

接下来,我们需要编写JavaScript代码来实现风格切换功能。

首先,我们要定义一个函数swapStyles(),来实现样式表的替换。在这个函数中,我们使用document.getElementById()方法来获取样式表元素,并使用其disabled属性来切换样式表的启用状态。具体代码如下:

function swapStyles() {
    var dayStyle = document.getElementById('dayStyle');
    var nightStyle = document.getElementById('nightStyle');
    if (dayStyle.disabled) {
        dayStyle.disabled = false;
        nightStyle.disabled = true;
    } else {
        dayStyle.disabled = true;
        nightStyle.disabled = false;
    }
}

通过点击按钮,执行swapStyles()函数,若当前为白天模式,那么就禁用白天模式的样式表,启用夜间模式的样式表; 若当前为夜间模式,那么就禁用夜间模式的样式表,启用白天模式的样式表。

示例

纯CSS版风格切换

在这个示例中,我们以<link>元素的media属性来实现风格切换,避免使用JavaScript。如果浏览器宽度小于600像素,则应用夜间模式;如果大于等于600像素,则应用白天模式。示例代码如下:

HTML:

<head>
  <link rel="stylesheet" href="day.css" media="(min-width: 600px)">
  <link rel="stylesheet" href="night.css" media="(max-width: 599px)">
</head>
<body>
  <p>这是内容</p>
</body>

CSS:

/* 白天模式的样式表 */
p {
  color: black;
  background-color: white;
}

/* 夜间模式的样式表 */
@media (max-width: 599px) {
  p {
    color: white;
    background-color: black;
  }
}

JavaScript版风格切换

在这个示例中,我们使用JavaScript来实现风格切换,通过点击按钮切换样式表。示例代码如下:

HTML:

<head>
  <link rel="stylesheet" href="day.css" id="dayStyle">
  <link rel="stylesheet" href="night.css" id="nightStyle" disabled>
</head>
<body>
  <button onclick="swapStyles()">切换风格</button>
  <p>这是内容</p>
</body>

JavaScript:

function swapStyles() {
    var dayStyle = document.getElementById('dayStyle');
    var nightStyle = document.getElementById('nightStyle');
    if (dayStyle.disabled) {
        dayStyle.disabled = false;
        nightStyle.disabled = true;
    } else {
        dayStyle.disabled = true;
        nightStyle.disabled = false;
    }
}

CSS:

/* 白天模式的样式表 */
p {
  color: black;
  background-color: white;
}

/* 夜间模式的样式表 */
#nightStyle {
  color: white;
  background-color: black;
}

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JS版网站风格切换实例代码 - Python技术站

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

相关文章

  • JS实现点击li标签弹出对应的索引功能【案例】

    JS实现点击li标签弹出对应的索引功能可以使用jQuery或原生JS实现。以下是详细的步骤: 1. HTML结构 首先需要创建一个ul列表,每个li元素上都应该有一个data属性,它的值为它所代表的元素在列表中的索引。 <ul id="list"> <li data-index="0">Item…

    JavaScript 2023年6月10日
    00
  • JS.GetAllChild(element,deep,condition)使用介绍

    JS.GetAllChild(element,deep,condition)使用介绍 JS.GetAllChild(element,deep,condition) 是一个用来获取指定元素所有符合条件的子元素的函数。下面将详细介绍该函数的使用方式及注意事项。 语法 JS.GetAllChild(element, deep, condition); 参数: el…

    JavaScript 2023年6月10日
    00
  • js实现拖动缓动效果

    实现拖动缓动效果,需要用到JavaScript中的定时器和数学运算等技术。下面我来详细讲解一下整个过程。 第一步:获取元素位置 首先,我们需要获取需要拖动的元素以及它的位置。在代码中,我们通常会使用getBoundingClientRect()方法来获取元素的绝对位置。 const dragElem = document.querySelector(‘.dr…

    JavaScript 2023年6月10日
    00
  • 11个Javascript小技巧帮你提升代码质量(小结)

    下面是针对“11个Javascript小技巧帮你提升代码质量(小结)”这篇文章的完整攻略: 1. 使用const和let代替var 在 ES6 中引入了两个新关键字:const 和 let,它们可以分别用于声明常量和变量。使用 const 和 let 替代了旧的 var 关键字可以避免变量提升的问题。同时,let 也仅在块作用域内有效,而 var 在全局作用…

    JavaScript 2023年6月10日
    00
  • 15个简单的JS编码标准让你的代码更整洁(小结)

    15个简单的JS编码标准让你的代码更整洁(小结) 本文为大家整理了15个简单的javascript编码标准,帮助开发人员写出更加干净整洁的代码,提高可维护性和可读性。 1. 使用=== 比较运算符 使用=== 比较运算符可以避免类型不同比较混淆和类型自动转换的问题。 2. 使用const 或 let, 不使用 var 使用 const 或 let 比 var…

    JavaScript 2023年5月18日
    00
  • JavaScript初学者容易犯的几个错误

    JavaScript初学者容易犯的几个错误 在学习JavaScript的过程中,初学者常常会犯一些基础错误,本文将介绍几个常见的错误并提供解决方案。 错误1:变量命名不规范 初学者经常会犯变量命名不规范的错误,这会导致代码难以阅读和维护。正确的变量命名应该具有描述性和表现力,同时应该遵循驼峰命名法或者下划线命名法。 // 不规范的变量命名 var a = 5…

    JavaScript 2023年6月10日
    00
  • 详解javascript事件冒泡

    详解JavaScript事件冒泡攻略 在JavaScript中,事件冒泡是指当一个元素触发了某个事件时,该事件将传递到该元素的祖先元素,一直到HTML文档的根节点。这意味着如果您不阻止事件冒泡,那么在触发最底层元素的事件时,将触发所有父元素的事件。在本教程中,我们将详细讨论Javascript事件冒泡和如何在代码中实现它。 什么是事件冒泡 事件冒泡是一种机制…

    JavaScript 2023年6月10日
    00
  • JavaScript数组实例的9个方法

    下面我来为您详细讲解JavaScript数组实例的9个方法: 1. push() arr.push(item1, item2, …, itemX); push() 方法向数组的末尾添加一个或多个元素,并返回新的长度。示例代码如下: let arr = [1, 2, 3]; // 向数组末尾添加元素4 arr.push(4); console.log(ar…

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