@paradoks92

SessionStorage взять значения?

Приветствую, нужно чтобы из SessionStorage брался объект. В данном случае я меняю у css свойств значения.
Надо чтобы они сохранялись пока человек перемещается по сайту.
Я проверял, он туда записывается, но как это дело уже вытаскивать из SessionStorage, чтобы на каждой странице человек не выключал, то что ему не нужно.
var flag = true
        $('.live-close').click(function() {
            if (flag == true) {
               
                obj = {
                    data1: $('#fixed').css('display', 'none'),
                    data2: $('.container-scroller').css('marginRight', 'auto'),
                    data3: $('.navbar').css('width', '100%'),
                    data4: $('#live-close').css('display', 'block')
                    
            }
                flag = false
                sessionStorage.setItem("key", JSON.stringify(obj));
                var objStr2 = sessionStorage.getItem("key");
                 JSON.parse(objStr2);
    
            } else {
                
                // obj = {
                //     data1: $('#live-close').css('display', 'none'),
                //     data2:  $('#fixed').css('display', 'block'),
                //     data3: $('.container-scroller').css('marginRight', '14%'),
                //     data4: $('.navbar').css('width', '86%'),
                //     data5:  flag = true
                
                // }
                
                }
        });
            
        
    });

Пробовал уже разными способами, и функцией и т.д.
Это один из первых вариантов, прошу помочь с этим работаю первый раз.
  • Вопрос задан
  • 90 просмотров
Решения вопроса 1
sergiks
@sergiks Куратор тега JavaScript
♬♬
Сохраняйте только значение флага и при загрузке страницы выполняйте функцию.

Объект для сохранения в *Storage сериализуется в текст. Как JSON.stringify() При этом теряются исполняемые методы и ссылки на узлы DOM-дерева. Да и само DOM-дерево-то на новой странице будет уже другое.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
SummerWeb Ярославль
от 120 000 до 180 000 ₽
КРАФТТЕК Санкт-Петербург
от 60 000 до 80 000 ₽
Brightdata Тель-Авив
от 5 500 до 6 500 $
02 июн. 2024, в 01:13
2000 руб./за проект
01 июн. 2024, в 23:49
50000 руб./за проект
01 июн. 2024, в 23:20
30000 руб./за проект