|
|
| (не показано 28 промежуточных версий этого же участника) |
| Строка 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() {
| |
| 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);
| |
| }
| |
| });
| |
/* Размещённый здесь код JavaScript будет загружаться пользователям при обращении к каждой странице */
// console.log("Привет");