關於小遊戲倒計時的案例
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style>
button:hover{
cursor: pointer;
}
</style>
<script>
//1.獲取遊戲的總時間 60秒
//2.遊戲開始的時間 01
//3.遊戲進行時 10
//4. 遊戲進行時 - 遊戲開始時間 = 玩家遊戲時長
//5. 遊戲總時間 - 玩家遊戲時長 = 遊戲倒計時
var game_time;//遊戲總時長
var game_start;//遊戲開始時間
var djs_span;//顯示倒計時
var id;//計時器id
var game_djs;//遊戲倒計時
var isZT = false;//判斷是否爲暫停,false表示未點擊暫停
var zt_time;//暫停時的倒計時值
var jx_id;//繼續遊戲的倒計時id
var startBtn;//遊戲開始按鈕
window.onload = function(){
djs_span = document.getElementById("djs");
//暫停遊戲
var zt = document.getElementById("zt");
//開始遊戲
startBtn = document.getElementById("btn");
startBtn.onclick = function(){
clearTimeout(jx_id);
if(isZT){
var reset = confirm("您的遊戲正在進行中,確定要重新開始嗎?");
if(reset){
zt.textContent = "暫停遊戲";
isZT = false;
}else{
return;
}
}
//獲取遊戲總時長
game_time = document.getElementById("time").value*60;
//記錄遊戲開始時間
game_start = new Date();
//禁用開始按鈕
startBtn.disabled = true;
djs();
}
//停止遊戲
document.getElementById("stop").onclick = function(){
game_stop();
//還原開始按鈕
startBtn.disabled = false;
}
zt.onclick = function(){
game_zt();
if(isZT){
//點擊繼續按鈕
zt.textContent = "暫停遊戲";
isZT = false;
//禁用開始按鈕
startBtn.disabled = true;
//記錄繼續遊戲開始時間
game_start = new Date();
game_jx();
}else{
//點擊暫停按鈕
zt.textContent = "繼續遊戲";
isZT = true;
//還原開始按鈕
startBtn.disabled = false;
//記錄暫停時間
zt_time = game_djs;
game_zt();
}
}
}
//倒計時方法
function djs(){
//獲取遊戲進行時
var playing = new Date();
game_djs = game_time - parseInt((playing - game_start)/1000);
djs_span.innerHTML = game_djs;
id = setTimeout("djs()",1000);//步長
//遊戲結束
if(game_djs<1){
clearTimeout(id);
alert("遊戲結束");
}
}
//暫停遊戲
function game_zt(){
clearTimeout(id);
clearTimeout(jx_id);
}
//繼續遊戲
function game_jx(){
//獲取遊戲進行時
var playing = new Date();
game_djs = zt_time - parseInt((playing - game_start)/1000);
djs_span.innerHTML = game_djs;
jx_id = setTimeout("game_jx()",1000);//步長
//遊戲結束
if(game_djs<1){
clearTimeout(jx_id);
alert("遊戲結束");
}
}
//遊戲結束
function game_stop(){
clearTimeout(id);
clearTimeout(jx_id);
game_djs = 0;
djs_span.innerHTML = game_djs;
}
</script>
</head>
<body>
遊戲時長:<input id="time" type="text" size="5px" value="1" />分鐘<br />
遊戲倒計時:<span id="djs"></span>秒<br />
<button id="btn">開始遊戲</button>
<button id="zt" >暫停遊戲</button>
<button id="stop">停止遊戲</button>
</body>
</html>