Новая страница: «// Функция переключения темы function toggleTheme() { const body = document.body; body.classList.toggle('dark-theme'); // Сохранение выбора в localStorage const isDark = body.classList.contains('dark-theme'); localStorage.setItem('theme', isDark ? 'dark' : 'light'); } // Загрузка сохраненной темы при открытии страницы document.addEventListener('DOMContentLoaded',...» |
мНет описания правки |
||
Строка 18: | Строка 18: | ||
// Добавление кнопки переключения темы | // Добавление кнопки переключения темы | ||
// Добавление кнопки в раздел "Инструменты" левого меню | |||
mw.hook('ve.activationComplete').add(function() { | |||
. | mw.util.addPortletLink( | ||
'p-tb', // ID раздела (p-tb = инструменты) | |||
'#', | |||
'🌓 Тема', | |||
'theme-switcher', | |||
'Переключить цветовую тему', | |||
null, | |||
$('#pt-preferences').next() | |||
).find('a').on('click', function(e) { | |||
e.preventDefault(); | |||
toggleTheme(); | |||
}); | }); | ||
}); | }); |
Версия от 13:36, 1 апреля 2025
// Функция переключения темы function toggleTheme() {
const body = document.body; body.classList.toggle('dark-theme'); // Сохранение выбора в localStorage const isDark = body.classList.contains('dark-theme'); localStorage.setItem('theme', isDark ? 'dark' : 'light');
}
// Загрузка сохраненной темы при открытии страницы document.addEventListener('DOMContentLoaded', function() {
const savedTheme = localStorage.getItem('theme'); if (savedTheme === 'dark') { document.body.classList.add('dark-theme'); }
});
// Добавление кнопки переключения темы // Добавление кнопки в раздел "Инструменты" левого меню
mw.hook('ve.activationComplete').add(function() {
mw.util.addPortletLink( 'p-tb', // ID раздела (p-tb = инструменты) '#', '🌓 Тема', 'theme-switcher', 'Переключить цветовую тему', null, $('#pt-preferences').next() ).find('a').on('click', function(e) { e.preventDefault(); toggleTheme(); });
});