Как получить значение атрибута href из localStorage и поместить его в link с файлом сss?
Сделал что-то вроде темного режима по клику на кнопку. Тут принцип таков: есть 2 css-файла. 1 - light.css, 2 - dark.css (светлая и темная темы соответственно. Смена режимов работает при изменении значения атрибута href на теге link c ссылкой на css-файл. По нажатию на кнопку тему тема меняется, как и соответствующее значение в localStorage. Но совсем не выходит получать это значение из localStorage и записывать его в значение атрибута href сразу же после обновления страницы автоматически. В общем, пытаюсь сохранять выбранную тему после обновления страницы. Ниже указан код:
function ChangeTheme() {
let lightTheme = 'css/light.css';
let darkTheme = 'css/dark.css';
var theme = '';
var currentTheme = link.getAttribute('href');
if (currentTheme == darkTheme) {
currentTheme = lightTheme;
theme = 'css/light.css';
} else {
currentTheme = darkTheme;
theme = 'css/dark.css';
}
localStorage.setItem('href', theme);
link.setAttribute('href', localStorage.getItem('href'));
}
Ответы (1 шт):
Может не стоит изобретать очередной велосипед ? Вот рабочий вариант.
Если хорошо покопаться, то можно найти ещё проще метод по запросу как включить темную тему js Там вообще без JS на переключениях переменных в СSS/ Если вам поддерживать только новые браузеры.