Automatically switch to dark mode

This commit is contained in:
vas3k
2020-01-05 20:41:29 +01:00
parent 99375958a0
commit 8cc39e3ac3

View File

@@ -1,7 +1,7 @@
function initializeThemeSwitcher() {
const toggleSwitch = document.querySelector('.theme-switcher input[type="checkbox"]');
const themeSwitch = document.querySelector('.theme-switcher input[type="checkbox"]');
function switchTheme(e) {
themeSwitch.addEventListener("change", function(e) {
if (e.target.checked) {
document.body.className = "dark-theme";
localStorage.setItem("theme", "dark");
@@ -9,14 +9,13 @@ function initializeThemeSwitcher() {
document.body.className = "light-theme";
localStorage.setItem("theme", "light");
}
}
toggleSwitch.addEventListener("change", switchTheme, false);
}, false);
const isDarkOS = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches;
const theme = localStorage.getItem("theme");
if (theme === "dark") {
if (theme === "dark" || isDarkOS) {
document.body.className = "dark-theme";
toggleSwitch.checked = true;
themeSwitch.checked = true;
}
}