jQuery 写的简单打字游戏可以提示正确和错误的次数


Posted in Javascript onJuly 01, 2014
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>
Javascript 相关文章推荐
childNodes.length与children.length的区别
May 14 Javascript
jQuery实现点击后标记当前菜单位置(背景高亮菜单)效果
Aug 22 Javascript
Javascript OOP之面向对象
Jul 31 Javascript
js判断checkbox是否选中个数的方法(超简单)
Aug 19 Javascript
js事件源window.event.srcElement兼容性写法(详解)
Nov 25 Javascript
基于Bootstrap漂亮简洁的CSS3价格表(附源码下载)
Feb 28 Javascript
如何使用bootstrap框架 bootstrap入门必看!
Apr 13 Javascript
jQuery实现html table行Tr的复制、删除、计算功能
Jul 10 jQuery
Angularjs中的验证input输入框只能输入数字和小数点的写法(推荐)
Aug 16 Javascript
JS实现DOM删除节点操作示例
Apr 04 Javascript
vue.js做一个简单的编辑菜谱功能
May 08 Javascript
vue计算属性computed、事件、监听器watch的使用讲解
Jan 21 Javascript
JavaScript利用正则表达式去除日期中的“-”
Jul 01 #Javascript
jquery实现图片按比例缩放示例
Jul 01 #Javascript
js 实现的可折叠留言板(附源码下载)
Jul 01 #Javascript
JavaScript利用append添加元素报错的解决方法
Jul 01 #Javascript
JS中attr和prop属性的区别以及优先选择示例介绍
Jun 30 #Javascript
Visual Studio中js调试的方法图解
Jun 30 #Javascript
ff chrome和ie下全局动态定位的异同及全局高度的取法
Jun 30 #Javascript
You might like
人族 Terran 魔法与科技
2020/03/14 星际争霸
JsEasy简介 JsEasy是什么?与下载
2007/03/07 Javascript
childNodes.length与children.length的区别
2009/05/14 Javascript
Prototype 学习 工具函数学习($A方法)
2009/07/12 Javascript
jquery 将disabled的元素置为enabled的三种方法
2009/07/25 Javascript
javascript在子页面中函数无法调试问题解决方法
2014/01/17 Javascript
JavaScript 学习笔记之语句
2015/01/14 Javascript
使用javascript插入样式
2016/03/14 Javascript
详解JavaScript异步编程中jQuery的promise对象的作用
2016/05/03 Javascript
jQuery Dialog对话框事件用法实例分析
2016/05/10 Javascript
详解JavaScript中Hash Map映射结构的实现
2016/05/21 Javascript
js验证框架之RealyEasy验证详解
2016/06/08 Javascript
js添加千分位的实现代码(超简单)
2016/08/01 Javascript
JS制作图形验证码实现代码
2020/10/19 Javascript
js实现消息滚动效果
2017/01/18 Javascript
JS简单实现数组去重的方法分析
2017/10/14 Javascript
vue插件mescroll.js实现移动端上拉加载和下拉刷新
2019/03/07 Javascript
Node.js API详解之 Error模块用法实例分析
2020/05/14 Javascript
antd vue 刷新保留当前页面路由,保留选中菜单,保留menu选中操作
2020/08/06 Javascript
[00:43]TI7不朽珍藏III——幽鬼不朽展示
2017/07/15 DOTA
日常整理python执行系统命令的常见方法(全)
2015/10/22 Python
在python中只选取列表中某一纵列的方法
2018/11/28 Python
Django渲染Markdown文章目录的方法示例
2019/01/02 Python
selenium python 实现基本自动化测试的示例代码
2019/02/25 Python
解决django后台样式丢失,css资源加载失败的问题
2019/06/11 Python
浅谈cv2.imread()和keras.preprocessing中的image.load_img()区别
2020/06/12 Python
Python+Opencv实现把图片、视频互转的示例
2020/12/17 Python
Python调用SMTP服务自动发送Email的实现步骤
2021/02/07 Python
Farnell德国:电子元器件供应商
2018/07/10 全球购物
党校学习思想汇报
2014/01/06 职场文书
职工运动会感言
2014/02/07 职场文书
给老师的一封建议书
2014/03/13 职场文书
政风行风自查自纠报告
2014/10/21 职场文书
机关作风建设整改方案
2014/10/27 职场文书
导游词之云南丽江古城
2019/09/17 职场文书
java协程框架quasar和kotlin中的协程对比分析
2022/02/24 Java/Android