#javascript #local-storage
Вопрос:
У меня есть код, который меняет цвет большого пальца при нажатии:
lt;button class="like" onclick="like(this)"gt;lt;i class="fa fa-thumbs-up"gt;lt;/igt;lt;/buttongt;
var state = true; function like(element){ if(state){ var currentElement = element.querySelector('.fa-thumbs-up'); currentElement.style.color = "orange"; }else{ var currentElement = element.querySelector('.fa-thumbs-up'); currentElement.style.color = "black"; } state = !state; }
Я хочу сохранить цвет в локальном хранилище: Пользователь нажимает «Нравится», и ему нравится, пока ему это не понравится (нет, когда он обновится).
Ответ №1:
Вы можете использовать localSotrage.setItem(key, value)
для хранения данных и localStorage.getItem(key)
для их повторного получения.
Для случая, когда вы хотели использовать вот так
var state = true; function like(element){ if(state){ var currentElement = element.querySelector('.fa-thumbs-up'); currentElement.style.color = "orange"; localStorage.setItem("storedColor", "orange"); }else{ var currentElement = element.querySelector('.fa-thumbs-up'); currentElement.style.color = "black"; localStorage.setItem("storedColor", "black"); } state = !state; } window.addEventListener('DOMContentLoaded', e =gt; { currentElement.style.color = localStorage.getItem("storedColor"); });