jQuery 写的简单打字游戏

来源:互联网 发布:java反序列化漏洞利用 编辑:程序博客网 时间:2024/05/15 01:18
var off_x;   //横坐标 var count=0;   //总分 var speed=5000;  //速度,默认是5秒. var keyErro=0;   //输入错误次数 var keyRight=0;   //输入正确的次数  //组织字母 var charArray=new Array("A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z");   //按键码数组 var arrCode=new Array(); for(var i=65;i<=90;i++){  arrCode[i-65]=i;    }   //随机生产一个字母  var randomChar=function(){    off_x=Math.random()*500+5;    //在div横坐标    //off_y=Math.random()*500-10;     //在div纵坐标    var c=charArray[parseInt(Math.random()*25)];  //随机生成一个字母    var charHtml="  <div class='char' id='"+c+"' style='left: "+off_x+"px;color:"+colorBox()+"'>"+c+"</div>";    $("#div1").append(charHtml);  };      var colorBox=function(){       Color=[]; //用数组存放颜色的样式     Color[0]="#ff2211";     Color[1]="#ff3311";     Color[2]="#ff5511";                 Color[3]="#ff8811";                 Color[4]="#ffBB99";                 Color[5]="#1ff4f1";                 Color[6]="#ff5566";                 Color[7]="#668899";                 Color[8]="#99BBfA";                 Color[9]="#fECECC";     return Color[parseInt(Math.random()*10)];   //随机生颜色.  }  //每隔三秒就调用些方法生产字母function accrueChar(){  //把随机出来的放在动画队列里  var _sildeFun=[      //把要执行的动画依次放入一个数组里  function(){$('#div1 div').animate({top:'+=470px'},speed,function(){   //当动画执行完时,就删除       $(this).remove();       count-=10;       $("input[type='text']").attr({"value":count});  });}  ]; //将函数组放入slideList动画队列里  $("#div1").queue('slideList',_sildeFun);  var _takeStart=function(){   //从队列最前端移除一个队列函数,并执行他。    $("#div1").dequeue("slideList");  };   function randCharHandle(){       randomChar();   _takeStart();  } randCharHandle();}//健码的处理function keyCode(event){  var keyValue = event.keyCode;  var flag=false;  //alert(keyValue);   for(var i=0;i<=arrCode.length;i++){       if(keyValue==arrCode[i]&&$("#"+charArray[i]+"").text()!=""){                  //选对后停止一秒          $("#"+charArray[i]+"").stop(1000).remove();          //选对就加10分          count+=10;          $("input[type='text']").attr({"value":count});          $("#right").text(keyRight);                   flag=true;          break;       }    }  if(flag){   flag=false;    keyRight++;    $("#right").text(keyRight);      }else{   keyErro++;   $("#erro").text(keyErro);  }}$(function(){  //加速$("input[value='加速++']").click(function(){   if(speed>0)   speed-=1000;});//减速$("input[value='减速--']").click(function(){   speed+=1000;});});window.setInterval("accrueChar()",1500);/*******************************************HTML页面***************************************************/ <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><script type="text/javascript" src="../../jQuery/jquery-1.8.3.js"></script><script type="text/javascript" src="test.js"></script><title>打字游戏</title><style type="text/css">#div1{  border: 2px red solid;  width:500px;  height: 500px;  background-color: black;}.char{  width: 20px;  height:20px;  position:absolute;  font: 40px;  }</style></head><body onkeypress="keyCode(event)">       <div id="div1">               </div>       <div>          <br>总数:<input type="text" readonly="readonly">                  <input type="button" value="加速++">                  <input type="button" value="减速--">          <br>错误次数:<label id="erro"></label>          <br>正确次数:<label id="right"></label>       </div></body></html>

原创粉丝点击