@selo

Как запомнить функцию js для пользователя?

Здравствуйте, есть функция переключения, которая отвечает на размер экрана.
Какое может быть решение по запоминанию этой функции для пользователя. Нажал изменить экран он изменился, а js запомнил это для всех страниц, для этого пользователя.
$(document).ready(function(){
  $(".button").click(function(){
    $("body").toggleClass("boxed"); return false;
  });
});
  • Вопрос задан
  • 297 просмотров
Решения вопроса 2
Austin_Powers
@Austin_Powers
Web developer (Symfony, Go, Vue.js)
Используй cookie или localstorage в js для хранения нужной информации и при загрузке страницы проверяй на наличие требуемого значения.
Ответ написан
Можно в localStorage сохранять выбранное состояние. В коде надо будет завести переменную состояния, при изменении сохранять в LS.

Обратите внимание, что Local Storage сохраняет только строки, поэтому для булева true/false придётся использовать JSON.parse() / JSON.stringify() при чтении/записи:
$(document).ready(function(){
  var key = "__body_boxed__";
  var boxedState = false;
  if( localStorage && JSON.parse(localStorage.getItem(key))) {
	  boxedState = true;
	  $("body").toggleClass("boxed");
	}
  $(".button").click(function(){
    $("body").toggleClass("boxed");
    boxedState = !boxedState;
    localStorage && localStorage.setItem(key, JSON.stringify(boxedState));
    return false;
  });
});


fiddle
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы