您好,登錄后才能下訂單哦!
這篇文章主要介紹“javascript實現(xiàn)同步服務器時間、同步倒計時”,在日常操作中,相信很多人在javascript實現(xiàn)同步服務器時間、同步倒計時問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”javascript實現(xiàn)同步服務器時間、同步倒計時”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
之前在網(wǎng)上看到有人提問,如何在頁面上同步顯示服務器的時間,其實實現(xiàn)方法有幾種,可能 一般人立馬就想到可以使用Ajax每隔一秒去請求服務器,然后將服務器獲取到時間顯示在頁面上,這樣雖然能夠?qū)崿F(xiàn),但存在一個很大的問題,那就是每隔一秒 去請求服務器,這樣如果用戶多了,服務器就會崩潰(內(nèi)存占用率會很大),所以在我看來,這種方法不可行,我這里給出一種解決方案,能夠?qū)崿F(xiàn)同步服務器時間、同步倒計時,卻不占用服務器太多資源,下面我給寫實現(xiàn)的思路
***步,當用戶***次瀏覽頁面時,服務器首先獲取當前時間并顯示在頁面上(比如:顯示在ID為timebox span中)
第二步,設置一個每隔一秒就計算新的時間(新時間以服務器時間為初始值,然后每隔一秒累加一秒并生成新的時間)
第三步,顯示第二步計算的時間
是不是很簡單,總結(jié)成一句話就是:以服務器時間為初始值,然后在頁面上自動每隔一秒就累加一秒生成新時間,這樣就能保證與服務器時間同步了,誤差基本在幾秒內(nèi),應該沒關系了,好了看一下實現(xiàn)的代碼吧:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
|
代碼很簡單在此就不多作說明(我上面只顯示時分秒,大家也可以加上日期,加上日期可在當h==0時,直接從服務器獲取一個日期或完整的時間,作為一次時間的校對),不懂的可以在下面評論,我會及時回復的,然后按照這種思路來實現(xiàn)一下同步倒計時,首先說明一下,什么是同步倒計時,就是類似秒殺一樣,設置一個結(jié)束時間,然后計算當前時間與結(jié)束時間之間間隔,而且必需保證在不同的電腦、瀏覽器上顯示的倒計時時間均相同,實現(xiàn)代碼如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
|
為了保證倒計時的精確度,我采用了先將倒計時時間間隔統(tǒng)一計算成秒,然后減1秒再重新生成時間格式,當然也可以按照上面時間同步的例子,直接進行時間減少,方法很多,我這個不一定是***的,歡迎大家交流,謝謝!
到此,關于“javascript實現(xiàn)同步服務器時間、同步倒計時”的學習就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關知識,請繼續(xù)關注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。