|
導(dǎo)讀網(wǎng)頁(yè)的本質(zhì)就是超級(jí)文本標(biāo)記語(yǔ)言,通過(guò)結(jié)合使用其他的Web技術(shù)(如:腳本語(yǔ)言、公共網(wǎng)關(guān)接口、組件等),可以創(chuàng)造出功能強(qiáng)大的網(wǎng)頁(yè)。因而,超級(jí)文本標(biāo)記語(yǔ)言是萬(wàn)維網(wǎng)(Web)編程的基礎(chǔ),也就是說(shuō)萬(wàn)維網(wǎng)是建立... 網(wǎng)頁(yè)的本質(zhì)就是超級(jí)文本標(biāo)記語(yǔ)言,通過(guò)結(jié)合使用其他的Web技術(shù)(如:腳本語(yǔ)言、公共網(wǎng)關(guān)接口、組件等),可以創(chuàng)造出功能強(qiáng)大的網(wǎng)頁(yè)。因而,超級(jí)文本標(biāo)記語(yǔ)言是萬(wàn)維網(wǎng)(Web)編程的基礎(chǔ),也就是說(shuō)萬(wàn)維網(wǎng)是建立在超文本基礎(chǔ)之上的。超級(jí)文本標(biāo)記語(yǔ)言之所以稱(chēng)為超文本標(biāo)記語(yǔ)言,是因?yàn)槲谋局邪怂^“超級(jí)鏈接”點(diǎn)。 js實(shí)現(xiàn)動(dòng)態(tài)倒計(jì)時(shí)效果的步驟:首先是獲取到用戶(hù)輸入的目標(biāo)時(shí)間,在獲取當(dāng)前時(shí)間,用目標(biāo)時(shí)間減去當(dāng)前時(shí)間,獲得時(shí)間差;然后,將得到的時(shí)間差傳化為天數(shù)、小時(shí)、分鐘、秒鐘;最后,動(dòng)態(tài)的輸出這些剩余時(shí)間。
下面我們就來(lái)一步一步的實(shí)現(xiàn)動(dòng)態(tài)倒計(jì)時(shí): 1、建立顯示的樣式 html代碼: <form>目的日期:<br><br>
<input type="text" id="year"><span>年</span>
<input type="text" id="month"><span>月</span>
<input type="text" id="day"><span>日</span><br><br>
<input type="text" id="hour"><span>時(shí)</span>
<input type="text" id="minute"><span>分</span>
<input type="text" id="second"><span>秒</span><br><br>
<input type="button" value="確定" onclick="show()">
</form><br><br>
<div class="time1">還剩時(shí)間:<br><br>
<span id="_d"></span>天
<span id="_h"></span>時(shí)
<span id="_m"></span>分
<span id="_s"></span>秒
</div>css代碼: input{width:50px;height: 20px;border:1px solid black;}
.time1 span{display:inline-block;width:40px;height: 20px;}效果圖:
2、實(shí)現(xiàn)動(dòng)態(tài)倒計(jì)時(shí)--js代碼 第一步:首先是要獲取到目標(biāo)時(shí)間,當(dāng)我們?cè)陧?yè)面輸入目標(biāo)日期,點(diǎn)擊確認(rèn)后,得到目標(biāo)時(shí)間。 function show(){
//獲取目的日期
var myyear=document.getElementById("year").value;
var mymonth=document.getElementById("month").value-1;
var myday=document.getElementById("day").value;
var myhour=document.getElementById("hour").value;
var myminute=document.getElementById("minute").value;
var mysecond=document.getElementById("second").value;
var time=Number(new Date(myyear,mymonth,myday,myhour,myminute,mysecond));
}第二步:獲取當(dāng)前時(shí)間、然后用目標(biāo)時(shí)間減去當(dāng)前時(shí)間,得到剩余時(shí)間,即時(shí)間差。 //獲取當(dāng)前時(shí)間 var nowTime=Date.now(); //獲取時(shí)間差 var timediff=Math.round((time-nowTime)/1000); 第三步:將得到的時(shí)間差傳化為天數(shù)、時(shí)、分、秒 //獲取還剩多少天 var day=parseInt(timediff/3600/24); //獲取還剩多少小時(shí) var hour=parseInt(timediff/3600%24); //獲取還剩多少分鐘 var minute=parseInt(timediff/60%60); //獲取還剩多少秒 var second=timediff%60; 第四步:輸出剩余時(shí)間 //輸出還剩多少時(shí)間
document.getElementById("_d").innerHTML=day;
document.getElementById("_h").innerHTML=hour;
document.getElementById("_m").innerHTML=minute;
document.getElementById("_s").innerHTML=second;效果圖:
此時(shí)還不是動(dòng)態(tài)的輸出,還需要我們手動(dòng)的不斷刷新,在輸入目標(biāo)日期。 第五步:使用定時(shí)器setTimeout(),動(dòng)態(tài)輸出時(shí)間 setTimeout(show,1000);
if(timediff==0){return 0;}當(dāng)時(shí)間差為0時(shí),返回0,停止輸出。也可以使用clearInterval()方法停止定時(shí)器,不在繼續(xù)動(dòng)態(tài)輸出時(shí)間: var set=setTimeout(show,1000);
if(timediff==0){clearInterval(set);}當(dāng)時(shí)間差為0時(shí),使用clearInterval()方法停止setTimeout()定時(shí)器,不在輸出時(shí)間。 動(dòng)態(tài)效果圖:
說(shuō)明: setInterval() :定義一個(gè)間隔性觸發(fā)計(jì)時(shí)器,會(huì)按照指定的周期(以毫秒計(jì))來(lái)調(diào)用函數(shù)或計(jì)算表達(dá)式。該方法會(huì)不停地調(diào)用函數(shù),直到 調(diào)用clearInterval()方法來(lái)停止setInterval()計(jì)時(shí)器或窗口被關(guān)閉。 總結(jié):以上就是本篇文章的全部?jī)?nèi)容,希望能對(duì)大家的學(xué)習(xí)有所幫助。 以上就是js如何實(shí)現(xiàn)動(dòng)態(tài)倒計(jì)時(shí)效果的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章! 網(wǎng)站建設(shè)是一個(gè)廣義的術(shù)語(yǔ),涵蓋了許多不同的技能和學(xué)科中所使用的生產(chǎn)和維護(hù)的網(wǎng)站。 |
溫馨提示:喜歡本站的話(huà),請(qǐng)收藏一下本站!