Задать вопрос
Ответы пользователя по тегу Веб-разработка
  • Почему результат не сохраняется при изменении темы?

    boyarskiy_mihail
    @boyarskiy_mihail
    Что под функцией Save ?
    Еще нужно при обновлении страницы брать значение из куки текущей темы и подставлять в элемент.
    Зачем использовать куки, если выбор темы это только для пользователя? Или в запросах к бекенду нужно учитывать какая тема у пользователя? По мне так проще использовать localStorage.
    const link = document.getElementById('theme-link');
    const lightTheme = '/css/light.css';
    const darkTheme = '/css/dark.css';
    let currentTheme = localStorage.getItem('theme');
    
    (function(){
        if( !currentTheme ) {
            currentTheme = lightTheme;
            localStorage.setItem('theme', currentTheme);
        }
        link.setAttribute('href', currentTheme);
    })();
    
    document.getElementById('theme-button').addEventListener('click', e => {
        e.preventDefault();
        if( currentTheme == darkTheme ) {
            currentTheme = lightTheme;
        }else {
            currentTheme = darkTheme;
        }
        link.setAttribute('href', currentTheme);
        localStorage.setItem('theme', currentTheme);
    });
    Ответ написан
    Комментировать