Touch2me
@Touch2me
QA в Raketa.travel

Как сохранить данные счётчика при перезагрузке страницы (JS)?

Приветствую!
Есть кнопка которая при нажатии добавляет +1 к каунтеру. Задача сделать так, чтобы на каждом устройстве данные сохранялись при перезагрузке страницы. Код самой кнопки:
<script type="text/javascript">
var clicks = 0;
function onClick() {
    clicks += 1;
    document.getElementById("clicks").innerHTML = clicks;
  };
function onReset() {
    if (confirm('Вы уверенны? Данные обнулятся!')){
      clicks = 0;
      document.getElementById("clicks").innerHTML = clicks;
    }
}
</script>
  • Вопрос задан
  • 546 просмотров
Решения вопроса 1
Touch2me
@Touch2me Автор вопроса
QA в Raketa.travel
Финальное рабочее решение выглядит так. Вдруг кому-то пригодится.

<script type="text/javascript">
    var clicks = localStorage.getItem('clicks') || 0;
    document.addEventListener("DOMContentLoaded", function(){ document.getElementById("clicks").innerHTML = localStorage.getItem('clicks') || 0; });
    function onClick() {
      clicks = +clicks + 1;
      document.getElementById("clicks").innerHTML = clicks;
      updateStorage(clicks);
    };

    function onReset() {
      if (confirm('Вы уверенны? Данные обнулятся!')) {
        clicks = 0;
        document.getElementById("clicks").innerHTML = clicks;
        updateStorage(clicks);
      }
    }

    function updateStorage(clicks) {
      localStorage.setItem('clicks', clicks);
    }
    </script>
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Krasnodar_etc
@Krasnodar_etc
fundraiseup
На каждом устройстве -- т.е. нажал в браузере, а в телефоне обновилось? Тогда ответ один: хранить значение счётчика на бэке
Ответ написан
Ваш ответ на вопрос

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

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