MediaWiki:Vector.js: различия между версиями

(Отмена правки 72140, сделанной Aylong (обсуждение))
Метки: отмена отменено
Нет описания правки
Метка: ручная отмена
Строка 1: Строка 1:
$(window).on("load", function() {
$(document).ready(function() {
    var isLightTheme = localStorage.getItem("isLightTheme");
    if (isLightTheme === "true") {
        document.documentElement.setAttribute('data-theme', 'light');
    } else {
        document.documentElement.setAttribute('data-theme', 'dark');
    }
 
     var button = document.createElement("button");
     var button = document.createElement("button");
     button.innerHTML = "Сменить тему";
     button.innerHTML = "Сменить тему";
Строка 15: Строка 8:
     if (container) {
     if (container) {
         container.parentNode.insertBefore(button, container);
         container.parentNode.insertBefore(button, container);
    }
    var isLightTheme = localStorage.getItem("isLightTheme");
    if (isLightTheme === "true") {
        document.documentElement.classList.add('light');
    } else {
        document.documentElement.classList.remove('light');
     }
     }
});
});


function toggleTheme() {
function toggleTheme() {
     const root = document.documentElement;
     var isLightTheme = document.documentElement.classList.toggle('light');
    const currentTheme = root.getAttribute('data-theme');
     localStorage.setItem("isLightTheme", isLightTheme);
    const newTheme = currentTheme === 'light' ? 'dark' : 'light';
    root.setAttribute('data-theme', newTheme);
 
     localStorage.setItem("isLightTheme", newTheme === 'light');
}
}

Версия от 17:23, 4 мая 2024

$(document).ready(function() {
    var button = document.createElement("button");
    button.innerHTML = "Сменить тему";
    button.className = "theme-button";
    button.onclick = toggleTheme;

    var container = document.getElementById("p-personal");
    if (container) {
        container.parentNode.insertBefore(button, container);
    }

    var isLightTheme = localStorage.getItem("isLightTheme");
    if (isLightTheme === "true") {
        document.documentElement.classList.add('light');
    } else {
        document.documentElement.classList.remove('light');
    }
});

function toggleTheme() {
    var isLightTheme = document.documentElement.classList.toggle('light');
    localStorage.setItem("isLightTheme", isLightTheme);
}