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 相关文章推荐
动态加载iframe
Jun 16 Javascript
引用外部js乱码问题分析及解决方案
Apr 12 Javascript
多次注册事件会导致一个事件被触发多次的解决方法
Aug 12 Javascript
jQuery.Highcharts.js绘制柱状图饼状图曲线图
Mar 14 Javascript
JavaScript动态修改弹出窗口大小的方法
Apr 06 Javascript
详解vue.js组件化开发实践
Dec 14 Javascript
jQuery Tree Multiselect使用详解
May 02 jQuery
webpack4简单入门实例
Sep 06 Javascript
Vue实现base64编码图片间的切换功能
Dec 04 Javascript
在react中使用vue的状态管理的方法示例
May 02 Javascript
js实现鼠标滑动到某个div禁止滚动
Sep 17 Javascript
微信小程序实现可拖动悬浮图标(包括按钮角标的实现)
Dec 29 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
php字符串按照单词进行反转的方法
2015/03/14 PHP
PHP面向对象程序设计__tostring()和__invoke()用法分析
2019/06/12 PHP
ThinkPHP 5.x远程命令执行漏洞复现
2019/09/23 PHP
php连接sftp的作用以及实例代码
2019/09/23 PHP
JavaScript 捕获窗口关闭事件
2009/07/26 Javascript
qTip 基于JQuery的Tooltip插件[兼容性好]
2010/09/01 Javascript
浅析javascript闭包 实例分析
2010/12/25 Javascript
Ajax搜索结果页面下方的分页按钮的生成
2012/04/05 Javascript
JS实现div内部的文字或图片自动循环滚动代码
2013/04/19 Javascript
JavaScript onkeypress事件入门实例(按下或按住一个键盘按键)
2014/10/17 Javascript
举例详解Python中smtplib模块处理电子邮件的使用
2015/06/24 Javascript
JS实现仿QQ效果的三级竖向菜单
2015/09/25 Javascript
Javascript实现的SHA-256加密算法完整实例
2016/02/02 Javascript
弹出遮罩层后禁止滚动效果【实现代码】
2016/04/29 Javascript
vue模板语法-插值详解
2017/03/06 Javascript
Angular.JS去掉访问路径URL中的#号详解
2017/03/30 Javascript
Angular 4依赖注入学习教程之FactoryProvider配置依赖对象(五)
2017/06/04 Javascript
使用JavaScript进行表单校验功能
2017/08/01 Javascript
jQuery实现轮播图效果
2019/11/26 jQuery
对numpy中二进制格式的数据存储与读取方法详解
2018/11/01 Python
pygame游戏之旅 添加游戏界面按键图形
2018/11/20 Python
python matplotlib实现双Y轴的实例
2019/02/12 Python
对Python 简单串口收发GUI界面的实例详解
2019/06/12 Python
浅析Windows 嵌入python解释器的过程
2019/07/26 Python
python装饰器使用实例详解
2019/12/14 Python
TensorBoard 计算图的可视化实现
2020/02/15 Python
Tensorflow tf.nn.depthwise_conv2d如何实现深度卷积的
2020/04/20 Python
使用HTML5的Canvas绘制曲线的简单方法
2015/09/08 HTML / CSS
新加坡领先的时尚生活方式零售品牌:CHARLES & KEITH
2018/01/16 全球购物
银行会计职员个人的自我评价
2013/09/29 职场文书
快递业务员岗位职责
2014/01/06 职场文书
质检部经理岗位职责
2014/02/19 职场文书
《春晓》教学反思
2014/04/20 职场文书
关于教师节的演讲稿
2014/09/04 职场文书
投资合作意向书范本
2015/05/08 职场文书
MySQL修炼之联结与集合浅析
2021/10/05 MySQL