Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 27.03.2018, 12:02
Аспирант
Отправить личное сообщение для Tipylja Посмотреть профиль Найти все сообщения от Tipylja
 
Регистрация: 17.04.2017
Сообщений: 72

Запомнить класс у дом элемента
Здравствуйте. Ранее я создавал здесь тему о checkbox по БЭМ, что бы при клике присваивались нужные классы нужному дом элементу. Вот так выглядит разметка о чекбоксе:
<label class="checkbox checkbox--size-l">
         <span class="checkbox__box">
                 <input class="checkbox__control" type="checkbox" autocomplete="off">
        </span>
        <span class="checkbox__text" role="presentation">
Профессиональный<sup>1</sup>
        </span>
     </label>

При активации чекбокса элементу с классом checkbox(в данном случае это тэг label)добавляется класс-модификатор checkbox--checked и вся стилизация задается через этот класс. Вот код, который этим управляет:
$(function() {
    $(".checkbox__control").on("change", function(event) {

        var chekcbox = this;

        if(chekcbox.checked) $(chekcbox).closest(".checkbox").addClass('checkbox--checked');
        else $(chekcbox).closest(".checkbox").removeClass('checkbox--checked');

        
    });
});

Подскажите, как можно сохранить уже включенные чекбоксы при обновлении страницы. Объясню на конкретной задаче - на сайте есть фильтрация, фильтры активируются по чекбоксам, после обновления страницы выборка по фильтрам сохраняется, но стилизация чекбокса пропадает, потому что при обновлении страницы пропадают классы, отвечающие за стили оформления активного чекбокса.
То есть, при активации чекбокса тэгу-родителю (!не чекбоксу) добавляется класс, который нужно сохранить при обновлении страницы, вот разметка активированного чекбокса:
<label class="checkbox checkbox--size-l checkbox--checked">
         <span class="checkbox__box">
                 <input class="checkbox__control" type="checkbox" autocomplete="off">
        </span>
        <span class="checkbox__text" role="presentation">
Профессиональный<sup>1</sup>
        </span>
     </label>

Наверно для этого подойдет кука? Не подскажете как такое можно реализовать?
Ответить с цитированием
  #2 (permalink)  
Старый 27.03.2018, 12:14
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

https://javascript.ru/forum/misc/727...alstorage.html
вот похожая тема
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Изменить класс элемента в зависимости от разрешения экрана funfot (X)HTML/CSS 1 19.09.2014 20:15
вернуть второй класс элемента imedia Элементы интерфейса 4 06.09.2014 18:29
Изменить класс родительского элемента STyLe Общие вопросы Javascript 1 29.05.2014 20:21
Скрипт при нахождение элемента добавляется класс, анимация Wahlberg Angular.js 0 02.02.2014 02:44
Как запомнить потомка, пототомов у родительского элемента? 1975andrei Общие вопросы Javascript 5 25.01.2013 16:57