HTML

<div class="box"><h3>你的鼠标有多快?</h3><p>游戏说明:点击'开始游戏',随机掉下QQ表情,点中它,千万别让它掉下去!!</p><input type="button" name="" id="" value="开始游戏" /><div class="cont"><div class="fen"><span>得分:0分</span><span>失分:0分</span></div><div id="game"></div></div>
</div>
<script src="mTween.js" type="text/javascript" charset="utf-8"></script>
<script src="tween.js" type="text/javascript" charset="utf-8"></script>

  

CSS

body{background: #ccc;
}
*{margin: 0;padding: 0;
}.box{width: 800px;margin: 20px auto;text-align: center;
}
.cont{width: 100%;
}
.cont:after{display: block;clear: both;content: "";
}
p{line-height: 30px;
}
input{padding: 5px 10px;margin-bottom: 10px;
}
.fen{float: left;width: 150px;padding: 10px;border: 1px solid #000;border-right: 0;background: #EBB22B;text-align: left;
}
.fen span{display: block;
}
#game{width: 547px;height: 400px;border: 1px solid #000;float: left;background: #fff;position: relative;overflow: hidden;text-align: center;font-size: 30px;font-weight: bold;line-height: 400px;
}
#game i{position: absolute;top: 0px;left: 0;width: 20px;height: 20px;background: red;border-radius: 50%;
}

JS

var game=document.getElementById("game");
var Btn=document.getElementsByTagName("input")[0];
var aIs=document.getElementsByTagName("i");
var aSpan=document.getElementsByTagName("span");
var num=0;
var num1=0
var timer=null;
var time1=3000;
var time2=2000;Btn.οnclick=function(){//修改按钮文字this.value="游戏进行中...";fn();timer=setInterval(function(){fn();},time1)}function fn(){//生成掉落的圆点game.innerHTML+="<i style='left: "+Math.round( Math.random()*520)+"px;'></i>";var len=aIs.length;for (var i=0;i<len;i++) {//圆点掉落mTween(aIs[i],"top",400,time2,"linear");mTween(aIs[i],"left",Math.round( Math.random()*530),time2,"linear",function(){//运动结束失分加1aSpan[1].innerHTML="失分:"+(aIs.length-num)+"分";//当失分大于10之后,游戏结束,不在生成圆点if(aIs.length-num>9){clearInterval(timer);Btn.value="游戏结束";}});aIs[i].index=i;//鼠标移入清除运动aIs[i].οnmοuseοver=function(){clearInterval(this["top"]);clearInterval(this["left"]);}//鼠标点击背景变为黑色,左右抖动,透明度变为0,得分加1,失分保持原先的值aIs[i].οnclick=function(){var that=this.index;num++;this.style.background="#000";shake(this,"left",function(){aIs[that].style.opacity="0";aSpan[0].innerHTML="得分:"+num+"分";aSpan[1].innerHTML="失分:"+(aIs.length-num)+"分";});}}//每次点击的圆点达到20个之后速度加快,都缩短100msif(num%20==0){time1-=100;time2-=100;//当时间减为0,并且失分少于10个之后,游戏终止,并清除定时器,显示恭喜if(time1<=0&&aIs.length-num<9){time1=0;time2=0;game.innerHTML="大神,恭喜您通关了!!"Btn.value="游戏结束";clearInterval(timer);}}}//抖动函数
function shake(obj,attr,fn){var timer=null;var arr=[];for(var i=20;i>0;i-=2){arr.push(i,-i);}arr.push(0);var num=0;clearInterval(timer);timer=setInterval(function(){var seep=parseInt(getStyle(obj,attr))+arr[num];num++;obj.style[attr]=seep+"px";if(num===arr.length){clearInterval(timer);if(fn){fn();}}},30)
}
//获取样式
function getStyle(obj,attr){if(obj.currentStyle){return obj.currentStyle[attr];}else{return getComputedStyle(obj)[attr];}
}

  

转载于:https://www.cnblogs.com/yangxue72/p/7998810.html

你的鼠标有多快-小游戏相关推荐

  1. IOS学习之道:使用UIButton纯手工打造的黑白快小游戏.

    由于代码量比较多,有兴趣的同学可以去我的资源页进行下载. http://download.csdn.net/detail/tx874828503/8637445 // // RootViewContr ...

  2. 有哪些小游戏的java代码_求一个Java小游戏代码(鼠标点击类小游戏)最好代码里面不要有中文...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 } else{ black_count=0; } if(chess[i][j]==2) { white_count++; if(white_count== ...

  3. python 控制鼠标点击需要100ms为什么_用 Python3 和 OpenCV 替我玩一玩微信小游戏 — 跳一跳 (这算外挂么)...

    0 瞎弄 我知道你们喜欢先看效果 手残的我,始终跳不过你们这些超过 50 分的大佬.想起最近在用 Python 学习 ML (Mechine Learning, 机器学习) ,怎么用没学会,倒是里面神 ...

  4. 原创跑酷小游戏《Cube Duck Run》 - - 方块鸭快跑

    自从unity5出来才开始关注unity,业余时间尝试做了个小游戏: <方块鸭快跑> (Cube Duck Run) 像素风,3d视角,色彩明快,有无尽和关卡两种模式. 应用连接: goo ...

  5. 快能通小学生计算机的游戏,亲子小游戏,帮助孩子更快学会交通安全知识

    随着我国机动化进程加快和小汽车进入千家万户,如何安全乘坐机动车,如何在上放学途中保障儿童青少年的交通安全,成为儿童青少年交通安全保护的重要内容.下面小编介绍几个亲子小游戏,帮助孩子更快学会交通安全知识 ...

  6. HTML5写的简单小游戏-绵羊快跑

    为什么80%的码农都做不了架构师?>>>    用HTML5仿一款灵敏测试的flash小游戏程序: 完整程序在我博客:http://meego123.net/post-61.html ...

  7. HTML+CSS+JS制作【飞机大战】小游戏(键盘版和鼠标版)

    文章目录 一.效果演示 设计思路 二.鼠标版飞机大战代码展示 1.HTML结构代码 2.CSS样式代码 3.JavaScript代码 js.js文件 plane.js文件 三.键盘版飞机大战代码展示 ...

  8. android飞行棋小程序,快来飞行棋小程序-微信快来飞行棋小程序小游戏-游戏宝手游网...

    快来飞行棋小程序是一款好玩的创意小游戏,点击喜欢的角色和其他玩家们来一场刺激的飞行棋大赛,快来飞行棋小程序中不同的冒险玩法和创意休闲体验让你成功完成任务,使用你的专属道具驾驶飞机超过其他的玩家,经典的 ...

  9. 可怜的博主跟小豆人杠起来啦!Python制作的吃豆人小游戏,快来围观!!

    相关文件 关注小编,私信小编领取哟! 当然别忘了一件三连哟~~ 对了大家可以关注小编的公众号哟~~ Python日志 开发环境 Python版本:3.6.4 相关模块: pygame模块: 以及一些P ...

最新文章

  1. pstree进程管理
  2. FPGA 时序约束系列之周期约束
  3. perl 中文处理 乱码
  4. 互联网金融网站走马观花
  5. 基于链表的学生成绩最高分计算问题计算用c语言编写课程设计,C语言程序设计课程设计-基于链表的学生成绩管理系统.doc...
  6. 【优化预测】基于matlab遗传算法优化RBF神经网络预测【含Matlab源码 451期】
  7. 小狼毫五笔输入法设置
  8. python实现 stft_Python中可转换的STFT和ISTFT
  9. H无穷控制学习笔记——H无穷/H2控制
  10. 百度api获取经纬度以及经纬度的转换
  11. 虚拟化应用交付解决方案【ANS SOLUTIONS】
  12. 现场快递柜状态采集与控制系统
  13. 黑马c++学习笔记提高篇1
  14. Ubuntu mirror source modify
  15. Xshell和Xftp的安装与使用教程
  16. 肯耐珂萨2019用户生态峰会 开启HR Paas时代
  17. SAS中的informat和input
  18. 程序猿和攻城狮(南大)
  19. 史上最全“Git插件+码云+分支” 使用步骤详解
  20. 搜索行为和关键词分析(二):用户也会犯错(转)

热门文章

  1. Javascript let和const
  2. Species Tree(HashTable实现)
  3. React开发(186):react 父调用子组件的方法
  4. React开发(127):引入icon的方式
  5. javascript学习系列(6):数组中的pop等方法
  6. 前端学习(3185):ant-design的button介绍按钮属性
  7. 前端学习(3067):vue+element今日头条管理-频道筛选完成
  8. [html] 跨标签页的通讯方式有哪些
  9. [vue] 使用vue开发过程你是怎么做接口管理的?
  10. [vue] vue变量名如果以_、$开头的属性会发生什么问题?怎么访问到它们的值?