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

Version Path
jekyll-theme-buttery-biscuit-0.3.7 assets/js/darkmode.js
jekyll-theme-buttery-biscuit-0.3.6 assets/js/darkmode.js
jekyll-theme-buttery-biscuit-0.3.5 assets/js/darkmode.js
jekyll-theme-buttery-biscuit-0.3.4 assets/js/darkmode.js
jekyll-theme-buttery-biscuit-0.3.3 assets/js/darkmode.js
jekyll-theme-buttery-biscuit-0.3.2 assets/js/darkmode.js
jekyll-theme-buttery-biscuit-0.3.1 assets/js/darkmode.js
jekyll-theme-buttery-biscuit-0.3.0 assets/js/darkmode.js
jekyll-theme-buttery-biscuit-0.2.2 assets/js/darkmode.js
jekyll-theme-buttery-biscuit-0.2.1 assets/js/darkmode.js
jekyll-theme-buttery-biscuit-0.2.0 assets/js/darkmode.js
jekyll-theme-buttery-biscuit-0.1.0 assets/js/darkmode.js