JavaScript利用Date實現簡單的倒計時實例
更新時間:2017年01月12日 10:49:45 作者:小紙人兒
在日常開發(fā)的時候經常遇到關于倒計時的需求,下面這篇文章就給主要介紹了JavaScript利用Date實現倒計時效果的方法示例,文中主要實現了倒計時和倒計時結束搶購的按鈕才可以被點擊的效果,有需要的朋友可以參考借鑒。
介紹
Date對象,是操作日期和時間的對象。Date對象對日期和時間的操作只能通過方法。Date在js中和Array類似,都是擁有自己的特殊方法的特殊對象。
創(chuàng)建 Date 對象的語法:
var myDate=new Date() //Date 對象會自動把當前日期和時間保存為其初始值。
獲取倒計時之前,我們不妨先來看怎樣獲取當前時間吧!??!
function time(){
var oDate = new Date();
var year = oDate.getFullYear();
var month = oDate.getMonth() + 1 ;
var dDate = oDate.getDate();
var day = oDate.getDay();
var house = oDate.getHours();
var minu = oDate.getMinutes();
var sec = oDate.getSeconds();
switch(day){
case 1:
day = '星期一';
break;
case 2:
day = '星期二';
break;
case 3:
day = '星期三';
break;
case 4:
day = '星期四';
break;
case 5:
day = '星期五';
break;
case 6:
day = '星期六';
break;
case 0:
day = '星期日';
break;
}
function double( t ){
if( t < 10 ){
t = '0' + t;
}
return t;
}
document.body.innerHTML = year + '年' + month +'月'+ dDate + '日 ' + day + ' ' + double(house) +':'+ double(minu) +':' + double(sec);
}
time();
setInterval(time,1000);
獲取倒計時
1、實現倒計時功能
2、倒計時結束按鈕可被點擊,之前不可被點擊
實例代碼:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>無標題文檔</title>
</head>
<body>
<div id="lastTime">
<span>0天 </span>
<span>00: </span>
<span>00: </span>
<span>00 </span>
</div>
<br /><br />
<style type="text/css">
#btn{
text-decoration: none;
display: block;
width: 100px;
height: 35px;
background: #ccc;
text-align: center;
line-height: 35px;
color: #666;
}
#btn.btn{
background: red;
color: #fff;
font-size: 20px;
font-weight: bold;
}
</style>
<a href="javascript:;" id="btn">即將開搶!</a>
<script type="text/javascript">
var oLt = document.getElementById("lastTime");
var oBtn = document.getElementById("btn");
time();
var timer = setInterval( time , 1000 );
function time(){
var endTime = new Date('2017/01/13 00:00:00');//結束日期不得在當前日期之前
var nowTime = new Date();
var splus = endTime.getTime() - nowTime.getTime();
//天 時 分 秒
if( splus <= 1 ){
clearInterval( timer );
oBtn.className = 'btn';
oBn.innerHTML = '開始秒殺!';
oBtn.;
return;
}else{
oBtn.className = '';
}
var day = Math.floor( splus / 1000 / 60 / 60 / 24 );
var hours = Math.floor( splus / 1000 / 60 / 60 % 24 );
var min = Math.floor(splus / 1000 / 60 % 60);
var sec = Math.floor(splus / 1000 % 60);
oLt.innerHTML = day + '天 ' + double( hours ) + ':' + double( min ) + ':' + double( sec );
function double( n ){
if( n < 10 ){
n = '0' + n;
}
return n;
}
}
</script>
</body>
</html>
效果圖如下:


總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
相關文章
js 兼容多瀏覽器的回車和鼠標焦點事件代碼(IE6/7/8,firefox,chrome)
本文講一下js實現兼容IE6/7/8,firefox,chrome瀏覽器的回車和鼠標焦點事件的代碼。2010-04-04

