1. 程式人生 > >ios移動端使用getTime()等,顯示NaN的解決辦法及原因

ios移動端使用getTime()等,顯示NaN的解決辦法及原因

原因:  例如:     var e_1 = new Date(circle_time).getTime(); //時間倒計時     可以在PC端和安卓端正確顯示倒計時但是IOS端不行於是在網上查到以下原因:。在IOS5以上版本不包含IOS5)中的Safari瀏覽器瀏覽器能正確解釋出的Javascript中的新日期('2013-10-21')的日期物件。但是在IOS5版本里面的Safari解釋新日期('2013-10-21')就不正確,在IOS5的Safari中返回的永遠是“Invalid Date”。而它支援的寫法為new Date('2013','10','21'),這樣寫就能解決“Invalid Date”的問題。

解決辦法:VAR E_1 = 日期(circle_time 代替/ - /g'/' ))的getTime (); //倒計時時間    

新增替換/ - / g '/'就可以解決問題。如上所示。

回顧前提:在開發H5小程式的過程中,需要倒計時功能,於是就引入了一個jQuery的的倒計時外掛。

首先遇到了一個問題,該倒計時外掛在倒計時結束以後並不會隱藏,而是停留在0天0時0分0秒的狀態。如下圖所示。

但是實際開發需要是在倒計時結束以後隱藏倒計時。於是就手動去修改了倒計時外掛的JS檔案。如下圖所示。

問題看似解決了。但是即使倒計時結束了,當用戶再次開啟這個頁面的時候會有倒計時一閃的情況。於是新問題就出現了。為了解決新問題,就採用了“比較當前時間和倒計時的截止時間“的方法。

在PC端和安卓端都是沒有問題的。但是在IOS端無效。後來查了一下才知道問題所在。於是修改為上述提到的解決方案

問題得以解決。