javaScript實(shí)現(xiàn)游戲倒計(jì)時(shí)功能
更新時(shí)間:2018年11月17日 09:59:20 作者:Z_唐
這篇文章主要為大家詳細(xì)介紹了javaScript實(shí)現(xiàn)游戲倒計(jì)時(shí)功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
本文實(shí)例為大家分享了js實(shí)現(xiàn)游戲倒計(jì)時(shí)的具體代碼,供大家參考,具體內(nèi)容如下
<html>
<head>
<meta charset="utf-8" />
<title></title>
<style>
button:hover {
cursor: pointer;
}
</style>
<script>
//1.獲取游戲的總時(shí)間
//2.游戲開始的時(shí)間
//3.游戲進(jìn)行時(shí)
//4. 游戲進(jìn)行時(shí) - 游戲開始時(shí)間 = 玩家游戲時(shí)長(zhǎng)
//5. 游戲總時(shí)間 - 玩家游戲時(shí)長(zhǎng) = 游戲倒計(jì)時(shí)
var zt;
var startBtn;
var djs_span;
var game_time; //游戲總時(shí)長(zhǎng)
var game_start; //游戲開始時(shí)間
var game_djs; //游戲倒計(jì)時(shí)
var id; //計(jì)時(shí)器id
var isZT = false; //判斷是否為暫停,false表示未點(diǎn)擊暫停
var zt_time; //暫停時(shí)的倒計(jì)時(shí)值
var jx_id; //繼續(xù)游戲的倒計(jì)時(shí)id
window.onload = function() {
//開始游戲
startBtn = document.getElementById("start");
//暫停游戲
zt = document.getElementById("zt");
//游戲倒計(jì)時(shí)
djs_span = document.getElementById("djs");
//開始游戲
startBtn.onclick = function() {
clearTimeout(jx_id);
if(isZT) {
var reset = confirm("您的游戲正在進(jìn)行中,確定要重新開始嗎?");
if(reset) {
zt.textContent = "暫停游戲";
isZT = false;
} else {
return;
}
}
//獲取游戲總時(shí)長(zhǎng)
game_time = document.getElementById("time").value * 60; //把所獲取的游戲總時(shí)長(zhǎng)變成秒
//記錄游戲開始時(shí)間
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) {
//點(diǎn)擊繼續(xù)按鈕
zt.textContent = "暫停游戲";
isZT = false;
//禁用開始按鈕
startBtn.disabled = true;
//記錄繼續(xù)游戲開始時(shí)間
game_start = new Date();
game_jx();
} else {
//點(diǎn)擊暫停按鈕
zt.textContent = "繼續(xù)游戲";
isZT = true;
//還原開始按鈕
startBtn.disabled = false;
zt_time = game_djs;
game_zt();
}
}
}
//倒計(jì)時(shí)方法
function djs() {
//獲取游戲進(jìn)行時(shí)
var playing = new Date();
game_djs = game_time - parseInt((playing - game_start) / 1000); //
djs_span.innerHTML = game_djs;
id = setTimeout("djs()", 1000); //步長(zhǎng)
//游戲結(jié)束
if(game_djs < 1) {
clearTimeout(id);
alert("游戲結(jié)束");
}
}
//暫停游戲
function game_zt() {
clearTimeout(id);
clearTimeout(jx_id);
}
//繼續(xù)游戲
function game_jx() {
//獲取游戲進(jìn)行時(shí)
var playing = new Date();
game_djs = zt_time - parseInt((playing - game_start) / 1000); //
djs_span.innerHTML = game_djs;
jx_id = setTimeout("game_jx()", 1000); //步長(zhǎng)
//游戲結(jié)束
if(game_djs < 1) {
clearTimeout(jx_id);
alert("游戲結(jié)束");
}
}
//停止游戲
function game_stop() {
clearTimeout(id);
clearTimeout(jx_id);
game_djs = 0;
djs_span.innerHTML = game_djs;
}
</script>
</head>
<body>
游戲總時(shí)長(zhǎng):<input id="time" type="text" size="5px" value="1" />分鐘 </br>
倒計(jì)時(shí):<span id="djs"></span> 秒 </br>
<button id="start">開始游戲</button>
<button id="zt">暫停游戲</button>
<button id="stop">停止游戲</button>
</body>
</html>
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:
- JS實(shí)現(xiàn)倒計(jì)時(shí)圖文效果
- Javascript實(shí)現(xiàn)時(shí)間倒計(jì)時(shí)功能
- Javascript實(shí)現(xiàn)秒表倒計(jì)時(shí)功能
- JS 倒計(jì)時(shí)實(shí)現(xiàn)代碼(時(shí)、分,秒)
- JS實(shí)現(xiàn)倒計(jì)時(shí)(天數(shù)、時(shí)、分、秒)
- 簡(jiǎn)單易用的倒計(jì)時(shí)js代碼
- js代碼實(shí)現(xiàn)點(diǎn)擊按鈕出現(xiàn)60秒倒計(jì)時(shí)
- js幾秒以后倒計(jì)時(shí)跳轉(zhuǎn)示例
- 2種簡(jiǎn)單的js倒計(jì)時(shí)方式
- JavaScript實(shí)現(xiàn)新年倒計(jì)時(shí)效果
相關(guān)文章
Js實(shí)現(xiàn)當(dāng)前點(diǎn)擊a標(biāo)簽變色突出顯示其他a標(biāo)簽回復(fù)原色
當(dāng)一個(gè)頁面有多個(gè)a標(biāo)簽,實(shí)現(xiàn)當(dāng)前點(diǎn)擊a標(biāo)簽變色,其他a標(biāo)簽回復(fù)原色,具體實(shí)現(xiàn)如下,喜歡的朋友可以參考下2013-11-11
淺談layui數(shù)據(jù)表格判斷問題(加入表單元素),設(shè)置單元格樣式
今天小編就為大家分享一篇淺談layui數(shù)據(jù)表格判斷問題(加入表單元素),設(shè)置單元格樣式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-10-10
webpack4實(shí)現(xiàn)不同的導(dǎo)出類型
這篇文章主要介紹了webpack4實(shí)現(xiàn)不同的導(dǎo)出類型,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04
js 獲取html5的data屬性實(shí)現(xiàn)方法
下面小編就為大家?guī)硪黄猨s 獲取html5的data屬性實(shí)現(xiàn)方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-07-07

