javascript - 如何加快网站上的暗模式延迟?
问题描述
我想加快暗模式在我的网站上生效。当我当前加载页面时,页面加载和暗模式生效之间存在延迟。这是我的 jQuery.js 代码
onload = function () {
if (localStorage.getItem("darkMode") === "true") {
var mode = localStorage.getItem("darkMode");
enableDarkMode();
}
}
function enableDarkMode() {
$("body").addClass("dark");
$("nav").removeClass("navbar navbar-expand-md navbar-light");
$("nav").addClass("navbar navbar-expand-md navbar-dark");
$('.inner-switch').text("ON");
var mode = localStorage.setItem("darkMode", "true");
}
function disableDarkMode() {
$("body").removeClass("dark");
$("nav").removeClass("navbar navbar-expand-md navbar-dark");
$("nav").addClass("navbar navbar-expand-md navbar-light");
$('.inner-switch').text("OFF");
var mode = localStorage.setItem("darkMode", "false");
}
$('.inner-switch').on("click", function () {
if ($("body").hasClass("dark")) {
disableDarkMode();
} else {
enableDarkMode();
}
});
解决方案
您可以使用Smarty之类的模板引擎,并在显示网站之前检查暗模式。然后,您可以分配一个 smarty 变量并在网站的 HTML 中构建一个 IF 语句。
例子:
<body {if darkMode} dark {/if}>
所以它会从一开始就加载暗模式。
推荐阅读
- matlab - 提供的目标函数必须返回一个标量值
- python - 如何创建一个列表长度为零的numpy数组?
- python - TypeError: unhashable type: 'numpy.ndarray' with Pandas 从 MYSQL 导入数据后
- php - PHP从具有命令的其他服务器调用页面
- python - 无法一次返回所有结果
- javascript - “一个函数参数如何与 javascript 中的另一个函数参数连接?”
- java - 如何在Android中从片段启动相机
- java - Java Sql 异常但已在库中应用 mysql-connector
- javascript - 如何在 Vue.js 中正确获取数据
- android - 如何在 Flutter 中访问 Android 的内部存储