خب الان من این رو در localStorage قرار دادم. باز هم رفرش میکنم از نو شروع میشه. چجوری باید ادامشو بگیرم؟
شاید پاسخ شما همینجا باشد
صورت مسئله:
1) وقتی وارد صفحه میشه یک دقیقه شروع میشه.
2) زمانسنج باید با از نو شدن صفحه، مقدارش از اول نشه.
3) بعد از گذشت یک دقیقه زمانسنج تمام بشه.
کدهای جاوااسکریپت
// enterTime and initialTime: اولین زمان ورود به صفحه توسط کاربر
// newTime: ورود اول یا دوم یا سوم و مراتب دیگر از طریق از نو کردن صفحه
// timer: متغیر نگهدارنده ی میزان زمان باقی مانده از مهلت یک دقیقه ای ِ اولیه
if(!localStorage.getItem('initialTime')) {
const enterTime = string(new Date().getTime() * 1000);
localStorage.setItem('initialTime', 'enterTime');
}
const initialTime = Number(localStorage.getItem('initialTime'));
let newTime = new Date().getTime() * 1000;
let timer = 60 - (newTime - initialTime);
// متغیر زمانسنج را به نمایشگر شمارش معکوس تحویل می دهید تا شروع به ادامه ی شمارش معکوس کند
// در پایان
if(timer <= 0) localStorage.removeItem('initialTime');@hesammousavi
فقط یک مشکلی هستش، اگر کاربر بره توی تنظیمات مرورگر و مقدار ذخیره شده (localStorage) رو حذف کنه، دیگه از کنترل خارجش میکنه ها.
@milad
میشه داخل session storage ذخیره کرد دوست عزیز.