Я просмотрел многие похожие вопросы и ответы на них, и я застрял, пытаясь найти рабочее решение. У меня есть несколько div с одинаковыми именами классов (они созданы в al oop), и их переключенное состояние должно оставаться на refre sh. Вот html, с которым я работаю:
<div class="bg-gray">
<div class="customize-card-md">
<input id="blog-1" class="customize-select" type="checkbox">
<label class="js-blog-select"></label>
</div>
</div>
При нажатии удаляется класс bg-grey, который я использую так:
$('.js-blog-select').on('click', function(event) {
$(this).closest('.customize-card-md').toggleClass('bg-gray');
})
Это jquery отлично работает сейчас. Как примечание, это написано таким образом из-за стиля для метки, который позволяет кликать всю метку, а также иметь дело с некоторыми пузырящимися / распространяющимися проблемами с подобными именами классов по щелчку. После того, как я прочитал столько документации , сколько я мог, я попытался включить ее, чтобы сохранить в локальном хранилище. Я совершенно новичок в использовании файлов cookie и localalstorage, но это то, что у меня пока не работает:
if (localStorage.getItem('togglebg') === 'true') {
$(this).closest('.customize-card-md').toggleClass('bg-gray');
}
$('.js-blog-select').on('click', function(event) {
$(this).closest('.customize-card-md').toggleClass('bg-gray');
localStorage.setItem('togglebg', $(this).hasClass('bg-gray'));
})
При обновлении sh фоны снова становятся серыми и не сохраняются без фона, как и должно быть. Любая помощь будет принята с благодарностью.