第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在 localStorage 到期之前停止倒計時?

如何在 localStorage 到期之前停止倒計時?

慕哥6287543 2021-06-07 12:33:41
以下腳本進(jìn)行倒計時,直到達(dá)到設(shè)定的數(shù)字(在本例中為 76),然后再次開始倒計時,依此類推。更新頁面倒計時不會重置,直到 localStorage 到期。我希望當(dāng)?shù)褂嫊r達(dá)到 76 時它停止并且不再開始計數(shù)。這直到 localStorage 過期。請問我該怎么做?<div id="divCounter"></div>var min = 80;var max = 85;var random = Math.floor(Math.random() * (+max - +min)) + +min;if (localStorage.getItem("counter")) {  if (localStorage.getItem("counter") >= 1000000000) { // Duration of localStorage    var value = random;  } else {    var value = localStorage.getItem("counter");  }} else {  var value = random;}document.getElementById('divCounter').innerHTML = value;var counter = function () {  if (value <= 76) { // End count down. <= or >=    localStorage.setItem("counter", random);    value = random;  } else {    value = parseInt(value) - 1; // + 1 or - 1    localStorage.setItem("counter", value);  }  document.getElementById('divCounter').innerHTML = value;};var interval = setInterval(function () {  counter();}, 1000); // speed count
查看完整描述

2 回答

?
蕪湖不蕪

TA貢獻(xiàn)1796條經(jīng)驗 獲得超7個贊

這段代碼有很多問題,但考慮到這里的情況,您需要在 value <= 76 時調(diào)用 clearInterval(interval) 以阻止 localStorage 在該點再次更改。


查看完整回答
反對 回復(fù) 2021-06-11
?
天涯盡頭無女友

TA貢獻(xiàn)1831條經(jīng)驗 獲得超9個贊

這是我對您意圖的最佳猜測:


// If there's a count in localStorage but it is expired then

//      set value to a random between 80 and 85

// else

//      set value to the count in localStorage


// Display the count in a div and decrease it by 1 every second. 

// If the count falls below 76 then 

//      stop counting down and

//      reset the localStorage counter to the random value


        const min = 80;

        const max = 85;

        const stopValue = 76;

        const duration = 1000000000;

        const rnd = Math.floor(Math.random() * (max - min)) + min;


        const counter = () => {

            const lsCounter = localStorage.getItem('counter');


            let retval;


            if(lsCounter && lsCounter <= duration){

                retval = lsCounter - 1;

                if(lsCounter <= stopValue){

                    clearInterval(interval);

                    retval = rnd;

                }

            }else{

                retval = rnd;

            }

            localStorage.setItem('counter', retval);

            document.getElementById('divCounter').innerHTML = retval;

        }

        let interval = setInterval(function () {

            counter();

        }, 1000); 

這樣對嗎?


查看完整回答
反對 回復(fù) 2021-06-11
  • 2 回答
  • 0 關(guān)注
  • 174 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號