@RoffDaniel

Как сохранить число счетчика JS?

Всем привет. Я использую счетчик на JavaScript. Мне нужно чтобы число счетчика сохранялось после перезагрузки страницы и было глобальным, а не персональным. Помогите пожалуйста(
<!DOCTYPE html>
<html>
<head>
    <title>Page Title</title>
    <style>
        .count {
            color: #0000ff;
        }
    </style>
</head>
<body>
    <div class="count"></div>
    <script src="https://code.jquery.com/jquery-3.2.1.min.js" integrity="sha256-hwg4gsxgFZhOsEEamdOYGBf13FyQuiTwlAQgxVSNgt4=" crossorigin="anonymous"></script>
    <script>
        $ ( function () {
            var
                count = 0,
                block = $( '.count' ),
                interval = setInterval( function () {
                    count++;
                    block.text( count );
                }, 5000 );

            block.text( count );
        } );
    </script>
</body>
</html>
  • Вопрос задан
  • 513 просмотров
Решения вопроса 2
@rogiivs
используй LocalStorage если нужно что бы число сохранялось на всегда или SessionStorage если только до перезагрузки браузера. И надобность в глобальной переменной отпадет

вот написал для вас:
$(function() {
var 
stratDate = new Date('2019-05-09T20:40:00'),                            // Дата начала таймера
delayMinutes = 5,                                                       // количество минут на 1 тик таймера
differenceMinutes = Math.round((new Date() - stratDate) / 1000 / 60),   // Получаем разницу в минутах 
interval = (delayMinutes - (differenceMinutes % delayMinutes)) * 60000, // получаем начальный интервал 
countTik = Math.floor(differenceMinutes / delayMinutes);                // количество прошедших тиков таймера

console.log('прошло:', countTik, 'тиков\nдо следующего тика:', interval, 'ms'); // [не обязательно] вывожу информацию в  консоль

setInterval(function() {
    console.log('прошло:', countTik, 'тиков'); // [не обязательно] вывожу информацию в  консоль
    interval = delayMinutes * 60000;           // Обновляем интервал
}, interval);
});
Ответ написан
@MamaLuyba
const date = 1557216578660/1000; // число берешь из нужной тебе даты new Date();
let userDate = new Date(); // это будет обновляться каждый раз по таймеру, например
let count = parseInt((userDate.getTime()/1000 - date)/5); // твой счетчик
localStorage.setItem('count', count); // записываем счетчик в хранилище

далее ставишь setInterval на свои пять секунд и пишешь в него код выше.
ну и потом вытаскиваешь из localStorage 'count' и с ним работаешь.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы