|
|
| (не показано 26 промежуточных версий этого же участника) |
| Строка 1: |
Строка 1: |
| // Объявляем функцию глобально | | /* Размещённый здесь код JavaScript будет загружаться пользователям при обращении к каждой странице */ |
| window.toggleTheme = function() {
| |
| document.body.classList.toggle('dark-theme');
| |
| localStorage.setItem('theme', document.body.classList.contains('dark-theme') ? 'dark' : 'light');
| |
| };
| |
|
| |
|
| // Загружаем сохраненную тему | | // console.log("Привет"); |
| document.addEventListener('DOMContentLoaded', function() {
| |
| var savedTheme = localStorage.getItem('theme');
| |
| if (savedTheme === 'dark') {
| |
| document.body.classList.add('dark-theme');
| |
| }
| |
| });
| |
| | |
| // Добавляем кнопку для Citizen
| |
| mw.hook('citizen.load').add(function() {
| |
| // Создаем кнопку
| |
| var button = document.createElement('button');
| |
| button.innerHTML = '🌓 Тема';
| |
| button.style.margin = '0 10px';
| |
| button.style.padding = '8px 12px';
| |
| button.style.cursor = 'pointer';
| |
| button.style.background = 'var(--background-color)';
| |
| button.style.color = 'var(--color-base)';
| |
| button.style.border = '1px solid var(--border-color-base)';
| |
| button.style.borderRadius = '4px';
| |
| button.onclick = toggleTheme;
| |
| | |
| // Вставляем кнопку в верхнюю панель Citizen
| |
| var headerTools = document.querySelector('.citizen-header__tools');
| |
| if (headerTools) {
| |
| headerTools.insertBefore(button, headerTools.firstChild);
| |
| } else {
| |
| var citizenHeader = document.querySelector('.citizen-header');
| |
| if (citizenHeader) {
| |
| citizenHeader.appendChild(button);
| |
| }
| |
| }
| |
| });
| |
/* Размещённый здесь код JavaScript будет загружаться пользователям при обращении к каждой странице */
// console.log("Привет");