javascript - js代碼獲取驗(yàn)證碼倒計(jì)時(shí)問題
問題描述
獲取驗(yàn)證碼倒計(jì)時(shí)的時(shí)候(譬如倒計(jì)時(shí)在40s),我點(diǎn)擊鏈接去到另外一個(gè)頁面(_self,本頁面跳轉(zhuǎn),不新開標(biāo)簽),經(jīng)過一段時(shí)間,點(diǎn)擊回退按鈕后回到倒計(jì)時(shí)的頁面,倒計(jì)時(shí)仍舊從40s開始.
想要的效果是,倒計(jì)時(shí)按照實(shí)際的事件繼續(xù)走動(dòng).譬如我停留了20s,回來倒計(jì)時(shí)應(yīng)該在20
請(qǐng)問,有什么解決方案嗎?(跳轉(zhuǎn)的新頁面的js沒辦法修改)
問題解答
回答1:用類似這樣的代碼,將發(fā)送驗(yàn)證碼的時(shí)間存儲(chǔ)到sessionStorage中,用當(dāng)前時(shí)間做減法:
var sentTime = new Date().getTime();sessionStorage.setItem(’sentTime’, sentTime);console.log(sentTime);var timePassed;setInterval(function(){ timePassed = (new Date().getTime() - sessionStorage.getItem(’sentTime’)); console.log(timePassed);},1000);回答2:
倒計(jì)時(shí)存到localstorage里,每次到這個(gè)頁面都先從localstorage讀
回答3:可以把當(dāng)前狀態(tài)存到sessionStorage。
不過實(shí)際上應(yīng)該是回到未點(diǎn)擊獲取驗(yàn)證碼的狀態(tài)才對(duì),再點(diǎn)擊時(shí)再進(jìn)行判斷。
相關(guān)文章:
1. javascript - 在靜態(tài)頁面上用load 引入的頁面文件問題?2. android - RxJavar用什么操作符可以使數(shù)據(jù)每隔一段時(shí)間取出一個(gè)3. node.js - Linux(CentOs)下hexo生成文章被killed4. css - 如何使用 vue transition 實(shí)現(xiàn) ios 按鈕一樣的平滑切換效果5. Android的webView如何實(shí)現(xiàn)網(wǎng)頁 錄音功能?6. javascript - webpack打包后的bundlejs文件代碼不知道什么意思.7. javascript - vue組件通過eventBus通信時(shí),報(bào)錯(cuò)a.$on is not a function8. css - 關(guān)于ul的布局9. html - 哪些情況下float會(huì)失效?10. java - oracle對(duì)漢字字段按照拼音排序的函數(shù)和sql語句是什么?
