diff options
| author | verdant <i@glowisle.me> | 2026-05-24 21:05:00 +0800 |
|---|---|---|
| committer | verdant <i@glowisle.me> | 2026-05-24 21:05:00 +0800 |
| commit | 803e32db12fd426597cffd1f8c7fb877401158f1 (patch) | |
| tree | 061074340ac684eb0799837ec1ecc5b406fb02a0 /static/js/color-scheme-switcher.js | |
| parent | f6ebd20313af4cde065e737d097338ea9efa5163 (diff) | |
| download | blog-803e32db12fd426597cffd1f8c7fb877401158f1.tar.gz blog-803e32db12fd426597cffd1f8c7fb877401158f1.zip | |
Add dark mode toggle
Diffstat (limited to 'static/js/color-scheme-switcher.js')
| -rw-r--r-- | static/js/color-scheme-switcher.js | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/static/js/color-scheme-switcher.js b/static/js/color-scheme-switcher.js new file mode 100644 index 0000000..9166e29 --- /dev/null +++ b/static/js/color-scheme-switcher.js @@ -0,0 +1,27 @@ +console.log("Loaded") +const modes = { + Dark = "dark", + Light = "light", +} + +function getCurrentMode() { + return localStorage.getItem("theme"); +} + +const toggleColorSchemeBtn = document.getElementById("toggle-theme-btn"); +const body = document.body; +const currentMode = getCurrentMode() +if (currentMode === modes.Light) { + body.classList.toggle("dark-mode"); + +} + +toggleColorSchemeBtn.addEventListener("click", () => { + body.classList.toggle("dark-mode"); + + if (body.classList.contains("dark-mode")) { + localStorage.setItem("theme", modes.Dark); + } else { + localStorage.setItem("theme", modes.Light); + } +}) |
