diff options
author | adam <56338480+adastx@users.noreply.github.com> | 2022-08-28 10:16:39 +0200 |
---|---|---|
committer | adam <56338480+adastx@users.noreply.github.com> | 2022-08-28 10:20:56 +0200 |
commit | c7ba27acc50b06f0f7c2cced9b609a15cc9552d9 (patch) | |
tree | f4f7625186f5841ddec667989660a51c0897ce06 /src/scripts | |
parent | 77cfc954e906edbf9a72aae5fa5fa091e58b014a (diff) |
Added option to toggle dark mode
Diffstat (limited to 'src/scripts')
-rw-r--r-- | src/scripts/darktheme.js | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/scripts/darktheme.js b/src/scripts/darktheme.js new file mode 100644 index 0000000..a06aca2 --- /dev/null +++ b/src/scripts/darktheme.js @@ -0,0 +1,27 @@ +// Get the theme toggle input +const currentTheme = localStorage.getItem("theme"); // If the current local storage item can be found + +if (window.matchMedia + && window.matchMedia("(prefers-color-scheme: dark)").matches + && !localStorage.getItem("theme")) { + localStorage.setItem("theme", "dark"); +} + +// Function that will switch the theme based on the if the theme toggle is checked or not +function switchTheme() { + if (document.body.classList.contains('dark-mode')) { + document.body.classList.remove("dark-mode"); + localStorage.setItem("theme", "light"); + } else { + document.body.classList.add("dark-mode"); + localStorage.setItem("theme", "dark"); + } +} +// Get the current theme from local storage +if (currentTheme === "dark") { + document.body.classList.add("dark-mode"); + localStorage.setItem("theme", "dark"); +} else { + document.body.classList.remove("dark-mode"); + localStorage.setItem("theme", "light"); +} |