Sha256: 54e7c5aa8c3658ddfa82f9d64ec218f57ab34d7ea1496c7bf6ba018c5566b177
Contents?: true
Size: 1.13 KB
Versions: 12
Compression:
Stored size: 1.13 KB
Contents
// Get stored style mode var mode = localStorage.getItem("mode"); // Check mode and set styling if (mode === "dark") { // Saved darkmode document.body.classList.add("dark"); document.querySelector('#theme-switch').innerHTML = "🌙"; } else if (mode === "light") { // Saved lightmode document.body.classList.remove("dark"); document.querySelector('#theme-switch').innerHTML = "☀️"; } else if ( window.matchMedia && window.matchMedia("(prefers-color-scheme: dark)").matches ) { // No saved mode, prefers dark document.body.classList.add("dark"); document.querySelector('#theme-switch').innerHTML = "🌙"; mode = "dark"; } else { // No saved mode, prefers light mode = "light"; } // Store mode localStorage.setItem("mode", mode); // Button for switching theme function switchMode(el) { const bodyClass = document.body.classList; bodyClass.contains("dark") ? ((el.innerHTML = "☀️"), bodyClass.remove("dark"), localStorage.setItem("mode", "light")) : ((el.innerHTML = "🌙"), bodyClass.add("dark"), localStorage.setItem("mode", "dark")); }
Version data entries
12 entries across 12 versions & 1 rubygems