新聞中心
之前在網(wǎng)上看到有人提問,如何在頁面上同步顯示服務(wù)器的時(shí)間,其實(shí)實(shí)現(xiàn)方法有幾種,可能 一般人立馬就想到可以使用Ajax每隔一秒去請求服務(wù)器,然后將服務(wù)器獲取到時(shí)間顯示在頁面上,這樣雖然能夠?qū)崿F(xiàn),但存在一個(gè)很大的問題,那就是每隔一秒 去請求服務(wù)器,這樣如果用戶多了,服務(wù)器就會(huì)崩潰(內(nèi)存占用率會(huì)很大),所以在我看來,這種方法不可行,我這里給出一種解決方案,能夠?qū)崿F(xiàn)同步服務(wù)器時(shí)間、同步倒計(jì)時(shí),卻不占用服務(wù)器太多資源,下面我給寫實(shí)現(xiàn)的思路

在景東等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè) 網(wǎng)站設(shè)計(jì)制作定制網(wǎng)站開發(fā),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站建設(shè),網(wǎng)絡(luò)營銷推廣,外貿(mào)網(wǎng)站制作,景東網(wǎng)站建設(shè)費(fèi)用合理。
***步,當(dāng)用戶***次瀏覽頁面時(shí),服務(wù)器首先獲取當(dāng)前時(shí)間并顯示在頁面上(比如:顯示在ID為timebox span中)
第二步,設(shè)置一個(gè)每隔一秒就計(jì)算新的時(shí)間(新時(shí)間以服務(wù)器時(shí)間為初始值,然后每隔一秒累加一秒并生成新的時(shí)間)
第三步,顯示第二步計(jì)算的時(shí)間
是不是很簡單,總結(jié)成一句話就是:以服務(wù)器時(shí)間為初始值,然后在頁面上自動(dòng)每隔一秒就累加一秒生成新時(shí)間,這樣就能保證與服務(wù)器時(shí)間同步了,誤差基本在幾秒內(nèi),應(yīng)該沒關(guān)系了,好了看一下實(shí)現(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 |
|
代碼很簡單在此就不多作說明(我上面只顯示時(shí)分秒,大家也可以加上日期,加上日期可在當(dāng)h==0時(shí),直接從服務(wù)器獲取一個(gè)日期或完整的時(shí)間,作為一次時(shí)間的校對),不懂的可以在下面評論,我會(huì)及時(shí)回復(fù)的,然后按照這種思路來實(shí)現(xiàn)一下同步倒計(jì)時(shí),首先說明一下,什么是同步倒計(jì)時(shí),就是類似秒殺一樣,設(shè)置一個(gè)結(jié)束時(shí)間,然后計(jì)算當(dāng)前時(shí)間與結(jié)束時(shí)間之間間隔,而且必需保證在不同的電腦、瀏覽器上顯示的倒計(jì)時(shí)時(shí)間均相同,實(shí)現(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 |
|
為了保證倒計(jì)時(shí)的精確度,我采用了先將倒計(jì)時(shí)時(shí)間間隔統(tǒng)一計(jì)算成秒,然后減1秒再重新生成時(shí)間格式,當(dāng)然也可以按照上面時(shí)間同步的例子,直接進(jìn)行時(shí)間減少,方法很多,我這個(gè)不一定是***的,歡迎大家交流,謝謝!
網(wǎng)站欄目:javascript小技巧:同步服務(wù)器時(shí)間、同步倒計(jì)時(shí)
URL標(biāo)題:http://fisionsoft.com.cn/article/dhshdoh.html


咨詢
建站咨詢
