javaScript实现游戏倒计时功能
时间:2018-11-17
这篇文章主要介绍了javaScript实现游戏倒计时功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了js实现游戏倒计时的具体代码,供大家参考,具体内容如下
<html> <head> <meta charset="utf-8" /> <title></title> <style> button:hover { cursor: pointer; } </style> <script> //1.获取游戏的总时间 //2.游戏开始的时间 //3.游戏进行时 //4. 游戏进行时 - 游戏开始时间 = 玩家游戏时长 //5. 游戏总时间 - 玩家游戏时长 = 游戏倒计时 var zt; var startBtn; var djs_span; var game_time; //游戏总时长 var game_start; //游戏开始时间 var game_djs; //游戏倒计时 var id; //计时器id var isZT = false; //判断是否为暂停,false表示未点击暂停 var zt_time; //暂停时的倒计时值 var jx_id; //继续游戏的倒计时id window.onload = function() { //开始游戏 startBtn = document.getElementById("start"); //暂停游戏 zt = document.getElementById("zt"); //游戏倒计时 djs_span = document.getElementById("djs"); //开始游戏 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="start">开始游戏</button> <button id="zt">暂停游戏</button> <button id="stop">停止游戏</button> </body> </html>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- JDK错误用法—TimSort
- Mybatis高级查询(三):分页查询
- 以OpenResty搭建RTB竞价引擎接入层
- 优化Linux bootloader速度的究极之路:从GRUB到EFI Stub
- Linux--nc命令
- Netty之美--I/O模型
- 023.基于IT论坛案例学习Elasticsearch(二):Query高级知识(一)
- 打卡群刷题总结0807——验证二叉搜索树
- 打卡群刷题总结0808——二叉树的层序遍历
- Mybatis高级查询(四):延迟加载
- I/O多路复用器之隐秘的角落
- 打卡群刷题总结0809——二叉树的锯齿形层次遍历
- 简单的ssm整合练手项目:汽车项目
- 在spring-boot中使用pageHelper插件
- 要深入 JavaScript,你需要掌握这 36 个概念