全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

js实现打地鼠小游戏

话不多说,请看代码:

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>打地鼠</title>
 <style type="text/css">
 #content {
 width:960px;
 margin:0 auto;
 text-align:center;
 margin-top:40px;
 }
 #form1 {
 margin:20px 0;
 }
 table {
 margin:0 auto;
 cursor:url(http://cdn.attach.qdfuns.com/notes/pics/201702/12/115915n79d7hvffengpdxe.png),auto;
 }
 td {
 width:95px;
 height:95px;
 background:#00ff33;
 }
 </style>
 <script type="text/javascript">
 var td = new Array(),  //保存每个格子的地鼠
 playing = false,  //游戏是否开始
 score = 0, //分数
 beat = 0, //鼠标点击次数
 success = 0, //命中率
 knock = 0, //鼠标点中老鼠图片的次数
 countDown = 30, //倒计时
 interId = null, //指定 setInterval()的变量
 timeId = null; //指定 setTimeout()的变量
 //游戏结束
 function GameOver(){
 timeStop();
 playing = false;
  clearMouse();
 alert("游戏结束!\n 你获得的分数为:"+score+"\n 命中率为:"+success);
 success = 0;
 score = 0;
 knock = 0;
 beat = 0;
 countDown = 30;
 }
 //显示当前倒计时所剩时间
 function timeShow(){
 document.form1.remtime.value = countDown;
 if(countDown == 0){
 GameOver();
 return;
 }else{
 countDown = countDown-1;
 timeId = setTimeout("timeShow()",1000);
 }
 }
 //主动停止所有计时
 function timeStop() {
 clearInterval(interId);
 clearTimeout(timeId); 
 }
 //随机循环显示老鼠图片
 function show(){
 if(playing){
 var current = Math.floor(Math.random()*25);
 document.getElementById("td["+current+"]").innerHTML = '<img src="http://cdn.attach.qdfuns.com/notes/pics/201702/12/115915w6tluu1gq8l1b54h.png">';
 setTimeout("document.getElementById('td["+current+"]').innerHtml=''",3000); //使用 setTimeout()实现3秒后隐藏老鼠图片
 }
 }
 //清除所有老鼠图片
 function clearMouse(){
 for(var i=0;i<25;i++){
 document.getElementById("td["+i+"]").innerHTML="";
 }
 }
 //点击事件函数,判断是否点中老鼠
 function hit(id){
 if(playing == false){
 alert("请点击开始游戏!");
 return;
 }else{
 beat += 1;
 if(document.getElementById("td["+id+"]").innerHTML != ""){
 score += 1;
 knock += 1;
 success = knock/beat;
 document.form1.success.value = success;
 document.form1.score.value = score;
 document.getElementById("td["+id+"]").innerHTML = "";
 }else{
 score += -1;
 success = knock/beat;
 document.form1.success.value = success;
  document.form1.score.value = score;
 }
 }
 }
 //游戏开始
 function GameStart(){
 playing = true;
 interId = setInterval("show()",1000); 
 document.form1.score.value = score;
 document.form1.success.value = success;
 timeShow();
 } 
 </script>
</head>
<body>
 <div id="content">
 <input type="button" value="开始游戏" onclick="GameStart()" />
 <input type="button" value="结束游戏" onclick="GameOver()" />
 <form name="form1" id="form1">
  <label>分数:</label>
  <input type="text" name="score" size="5">
  <label>命中率:</label>
  <input type="text" name="success" size="10">
  <label>倒计时:</label>
  <input type="text" name="remtime" size="5">
 </form> 
 <table>
  <tr>
  <td id="td[0]" onclick="hit(0)"></td>  
  <td id="td[1]" onclick="hit(1)"></td>
  <td id="td[2]" onclick="hit(2)"></td>
  <td id="td[3]" onclick="hit(3)"></td>
  <td id="td[4]" onclick="hit(4)"></td>
  </tr>
  <tr>
  <td id="td[5]" onclick="hit(5)"></td>
  <td id="td[6]" onclick="hit(6)"></td>
  <td id="td[7]" onclick="hit(7)"></td>
  <td id="td[8]" onclick="hit(8)"></td>
  <td id="td[9]" onclick="hit(9)"></td>
  </tr>
  <tr>
  <td id="td[10]" onclick="hit(10)"></td>
  <td id="td[11]" onclick="hit(11)"></td>
  <td id="td[12]" onclick="hit(12)"></td>
  <td id="td[13]" onclick="hit(13)"></td>
  <td id="td[14]" onclick="hit(14)"></td>
  </tr>
  <tr>
  <td id="td[15]" onclick="hit(15)"></td>
  <td id="td[16]" onclick="hit(16)"></td>
  <td id="td[17]" onclick="hit(17)"></td>
  <td id="td[18]" onclick="hit(18)"></td>
  <td id="td[19]" onclick="hit(19)"></td>
  </tr>
  <tr>
  <td id="td[20]" onclick="hit(20)"></td>
  <td id="td[21]" onclick="hit(21)"></td>
  <td id="td[22]" onclick="hit(22)"></td>
  <td id="td[23]" onclick="hit(23)"></td>
  <td id="td[24]" onclick="hit(24)"></td>
  </tr>
 </table>
 </div>
</body>
</html>

流程设计:

  • 点击“开始游戏”按钮游戏开始,否则将提示“请点击开始游戏”字样
  • 分数、命中率显示重置为“0”,倒计时开始(默认为30秒)
  • 老鼠图片不断显示、隐藏,玩家可点击鼠标左键进行游戏
  • 当30秒倒计时结束或者玩家主动点击“结束按钮”时,游戏结束并显示游戏结果

实例中用到的图片附件下载

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!


# js  # 打地鼠  # JavaScript实现打地鼠游戏  # 基于JavaScript+HTML5 实现打地鼠小游戏逻辑流程图文详解(附完整代码)  # JavaScript实现打地鼠小游戏  # JavaScript 打地鼠游戏代码说明  # JavaScript实现简单打地鼠游戏  # 倒计时  # 请点击  # 鼠标  # 多说  # 鼠标左键  # 率为  # 则将  # 数为  # 所剩  # 默认为  # 鼠标点击  # 判断是否  # td  # png  # n79d7hvffengpdxe  # qdfuns  # notes  # cdn  # attach 


相关文章: 如何快速搭建虚拟主机网站?新手必看指南  建站之星收费标准详解:套餐费用及年费价格表一览  高端智能建站公司优选:品牌定制与SEO优化一站式服务  湖南网站制作公司,湖南上善若水科技有限公司做什么的?  教学论文网站制作软件有哪些,写论文用什么软件 ?  如何选择靠谱的建站公司加盟品牌?  东莞专业网站制作公司有哪些,东莞招聘网站哪个好?  简历在线制作网站免费版,如何创建个人简历?  网站制作公司广州有几家,广州尚艺美发学校网站是多少?  如何在新浪SAE免费搭建个人博客?  购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?  如何通过西部建站助手安装IIS服务器?  深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?  建站主机服务器选型指南与性能优化方案解析  如何选择PHP开源工具快速搭建网站?  如何快速搭建高效可靠的建站解决方案?  手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?  建站之星CMS五站合一模板配置与SEO优化指南  网站建设制作需要多少钱费用,自己做一个网站要多少钱,模板一般多少钱?  深圳网站制作的公司有哪些,dido官方网站?  网站制作难吗安全吗,做一个网站需要多久时间?  专业型网站制作公司有哪些,我设计专业的,谁给推荐几个设计师兼职类的网站?  如何通过FTP空间快速搭建安全高效网站?  枣阳网站制作,阳新火车站打的到仙岛湖多少钱?  网站制作大概要多少钱一个,做一个平台网站大概多少钱?  宝塔建站教程:一键部署配置流程与SEO优化实战指南  建站之星如何取消后台验证码生成?  建站主机选购指南:核心配置优化与品牌推荐方案  常州自助建站:操作简便模板丰富,企业个人快速搭建网站  网站微信制作软件,如何制作微信链接?  开封网站制作公司,网络用语开封是什么意思?  c++怎么实现高并发下的无锁队列_c++ std::atomic原子变量与CAS操作【详解】  网站制作企业,网站的banner和导航栏是指什么?  如何在云服务器上快速搭建个人网站?  建站之星2.7模板快速切换与批量管理功能操作指南  网站规划与制作是什么,电子商务网站系统规划的内容及步骤是什么?  c++怎么编写动态链接库dll_c++ __declspec(dllexport)导出与调用【方法】  小型网站制作HTML,*游戏网站怎么搭建?  建站主机系统SEO优化与智能配置核心关键词操作指南  官网自助建站系统:SEO优化+多语言支持,快速搭建专业网站  网站专业制作公司有哪些,做一个公司网站要多少钱?  网站制作报价单模板图片,小松挖机官方网站报价?  详解jQuery停止动画——stop()方法的使用  香港服务器网站卡顿?如何解决网络延迟与负载问题?  常州企业网站制作公司,全国继续教育网怎么登录?  宝盒自助建站智能生成技巧:SEO优化与关键词设置指南  如何在IIS管理器中快速创建并配置网站?  全景视频制作网站有哪些,全景图怎么做成网页?  清单制作人网站有哪些,近日“兴风作浪的姑奶奶”引起很多人的关注这是什么事情?  娃派WAP自助建站:免费模板+移动优化,快速打造专业网站 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。