мНет описания правки Метка: отменено |
мНет описания правки Метка: отменено |
||
Строка 5: | Строка 5: | ||
}; | }; | ||
// | // Загружаем сохраненную тему | ||
document.addEventListener('DOMContentLoaded', function() { | document.addEventListener('DOMContentLoaded', function() { | ||
const | const savedTheme = localStorage.getItem('theme'); | ||
if ( | if (savedTheme === 'dark') { | ||
document.body.classList.add('dark-theme'); | |||
} | |||
}); | }); | ||
// Добавляем кнопку | // Добавляем кнопку в интерфейс Citizen | ||
mw. | mw.hook('citizen.load').add(function() { | ||
// Создаем кнопку | |||
const button = document.createElement('button'); | |||
button.innerHTML = '🌓 Тема'; | |||
button.style.cssText = ` | |||
margin: 0 10px; | |||
padding: 8px 12px; | |||
cursor: pointer; | |||
background: var(--background-color); | |||
color: var(--color-base); | |||
border: 1px solid var(--border-color-base); | |||
border-radius: 4px; | |||
`; | |||
button.onclick = toggleTheme; | |||
// Вставляем кнопку в верхнюю панель Citizen | |||
} | const headerTools = document.querySelector('.citizen-header__tools'); | ||
if (headerTools) { | |||
headerTools.prepend(button); | |||
} else { | |||
// Альтернативное размещение, если структура изменилась | |||
document.querySelector('.citizen-header').append(button); | |||
} | |||
}); | }); |
Версия от 14:12, 1 апреля 2025
// Объявляем функцию глобально
window.toggleTheme = function() {
document.body.classList.toggle('dark-theme');
localStorage.setItem('theme', document.body.classList.contains('dark-theme') ? 'dark' : 'light');
};
// Загружаем сохраненную тему
document.addEventListener('DOMContentLoaded', function() {
const savedTheme = localStorage.getItem('theme');
if (savedTheme === 'dark') {
document.body.classList.add('dark-theme');
}
});
// Добавляем кнопку в интерфейс Citizen
mw.hook('citizen.load').add(function() {
// Создаем кнопку
const button = document.createElement('button');
button.innerHTML = '🌓 Тема';
button.style.cssText = `
margin: 0 10px;
padding: 8px 12px;
cursor: pointer;
background: var(--background-color);
color: var(--color-base);
border: 1px solid var(--border-color-base);
border-radius: 4px;
`;
button.onclick = toggleTheme;
// Вставляем кнопку в верхнюю панель Citizen
const headerTools = document.querySelector('.citizen-header__tools');
if (headerTools) {
headerTools.prepend(button);
} else {
// Альтернативное размещение, если структура изменилась
document.querySelector('.citizen-header').append(button);
}
});