1. 程式人生 > >ios系統屏幕休眠或後臺運行倒計時暫停問題

ios系統屏幕休眠或後臺運行倒計時暫停問題

var date() 運行 span tint parse clas color art

    最近在做移動端獲取驗證碼倒計時問題,發現了一個問題,就是在屏幕休眠或者該程序切換到後臺 的時候,ios系統倒計時會暫停,但是在使用中的時候這個絕對算是一個bug。我的選擇是獲取當前時間戳來解決這個問題,具體代碼分析如下:

    function Time_a() {
                var time = 10;
                $(".time").text(time);
                var t = setInterval(function() {
                    if(time == 0) {
                        clearTimeout(t);
                    } 
else { time--; $(".time").text(time) } }, 1000) }

當用time--;來倒計時的時候,在IOS11上面就會出現倒計時斷層。因此我選擇使用時間戳,再配合後臺的時間限制,就可以解決IOS的後臺運行時間限制。

 function Time_b(){
                var time=10;
                var beginTime=new
Date().getTime(); $(".time-a").text(time); var t= setInterval(function(){ var newTime=new Date().getTime(); var dTime=(newTime-beginTime)/1000; dTime=parseInt(dTime); time = 10-dTime > 0 ? 10-dTime : 0; $(
".time-a").text(time); },1000) }

ios系統屏幕休眠或後臺運行倒計時暫停問題