js小游戏---智力游戏
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> 一个无聊的游戏 </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1"> </HEAD>
<style type="text/css">
tr td{cursor: pointer;transition: all ease .3s;color: #fff;font-weight: 600;box-shadow: 0 0 5px 1px #000;}
tr:last-child td:last-child{color: #000}
.bd{margin: 0 auto;width: 300px;}
</style>
<BODY style="background-color:#eee">
<div class="bd">
<h4 style="margin:15px 15px;">全部换色即为过关!</h4>
<table width="300" height="180" border="0" cellpadding="0" cellspacing="3">
<tr align="center">
<td bgcolor="#4599cc" width="25%" id="0-0" onclick="ct(this)"></td>
<td bgcolor="#4599cc" width="25%" id="0-1" onclick="ct(this)"></td>
<td bgcolor="#4599cc" width="25%" id="0-2" onclick="ct(this)"></td>
<td bgcolor="#4599cc" width="25%" id="0-3" onclick="ct(this)"></td>
</tr>
<tr align="center">
<td bgcolor="#4599cc" width="25%" id="1-0" onclick="ct(this)"></td>
<td bgcolor="#4599cc" width="25%" id="1-1" onclick="ct(this)"></td>
<td bgcolor="#4599cc" width="25%" id="1-2" onclick="ct(this)"></td>
<td bgcolor="#4599cc" width="25%" id="1-3" onclick="ct(this)"></td>
</tr>
<tr align="center">
<td bgcolor="#4599cc" width="25%" id="2-0" onclick="ct(this)"></td>
<td bgcolor="#4599cc" width="25%" id="2-1" onclick="ct(this)"></td>
<td bgcolor="#4599cc" width="25%" id="2-2" onclick="ct(this)"></td>
<td bgcolor="#f5f5d5" id="2-3" onclick="resetBox(this)"></td>
</tr>
</table>
<h4 id="mm"></h4>
</div>
</BODY>
</HTML>
<script type="text/javascript">
console.log("E H J I F C D H C")
var $ = function(ele){return document.getElementById(ele);}
var box = [
[1,1,1,1],
[1,1,1,1],
[1,1,1,0]
];
var maxX = 2; //最大行
var maxY = 3; //最大列
var count = 0;
function ct(ele){
var p = ele.id.split("-");
if(box[p[0]][p[1]] == 1){ //能点击
box[p[0]][p[1]] = -1; var sum = 0;
var aX = parseInt(p[0])-1,
bX = parseInt(p[0])+1,
cY = parseInt(p[1])-1,
dY = parseInt(p[1])+1;
if ( aX >= 0 ){
if(box[aX][p[1]] == -1){
box[aX][p[1]] = 1;
}else{
box[aX][p[1]] = -1;
}
}
if ( bX <= maxX ) {
if(box[bX][p[1]] == -1){
box[bX][p[1]] = 1;
}else{
box[bX][p[1]] = -1;
}
}
if( cY >= 0 ){
if(box[p[0]][cY] == -1){
box[p[0]][cY] = 1;
}else{
box[p[0]][cY] = -1;
}
}
if( dY <= maxY ){
if(box[p[0]][dY] == -1){
box[p[0]][dY] = 1;
}else{
box[p[0]][dY] = -1;
}
}
box[2][3] = 0;
$("mm").innerHTML = "第"+(++count)+"次尝试";
for(var i = 0; i<3 ; i++){
for(var j =0 ;j <4 ; j++){
sum += box[i][j];
if(box[i][j] == 1){
$(i+"-"+j).bgColor = "#4599cc";
$(i+"-"+j).style.color = "#fff"; }else if(box[i][j] == -1){
$(i+"-"+j).bgColor = "#d8cb59";
$(i+"-"+j).style.color = "#074d6d"; }else{
$(i+"-"+j).bgColor = "#f5f5d5";
};
}
};
if(sum == -11){ //
$("mm").innerHTML = "恭喜过关!尝试总次数:"+count;
$("mm").style.color = "#960000";
}
}
}
function resetBox(){
for(var i=0; i<3; i++){
for(var j=0; j<4; j++){
box[i][j] = 1;
$(i + '-' + j).bgColor = '#4599cc';
$(i + '-' + j).style.color = '#fff';
}
}
box[2][3] = 0;
count = 0;
$(2 + '-' + 3).bgColor = '#f5f5d5';
$('mm').innerHTML = '';
$("mm").style.color = "#000";
}
</script>
这里主要运用的技术就是数组了,逻辑很简单,让点击的元素四周元素全部变色,所有元素换色成功后即为过关
js小游戏---智力游戏的更多相关文章
- 一个js小游戏----总结
花了大概一天左右的功夫实现了一个js小游戏的基本功能,类似于“雷电”那样的小游戏,实现了随即怪物发生器,碰撞检测,运动等等都实现了,下一个功能是子弹轨迹,还有其他一些扩展功能,没有用库,也没有用web ...
- html+css+js实现网页拼图游戏
代码地址如下:http://www.demodashi.com/demo/14449.html 项目描述 使用 html+js+css 实现一个网页拼图游戏,可支持简单,中等,困难三种难度. 演示效果 ...
- BZOJ_1022_[SHOI2008]_小约翰的游戏John_(博弈论_反Nim游戏)
描述 http://www.lydsy.com/JudgeOnline/problem.php?id=1022 反Nim游戏裸题.详见论文<组合游戏略述——浅谈SG游戏的若干拓展及变形>. ...
- SHOI2008小约翰的游戏John
1022: [SHOI2008]小约翰的游戏John Time Limit: 1 Sec Memory Limit: 162 MBSubmit: 1139 Solved: 701[Submit][ ...
- BZOJ2464: 中山市选[2009]小明的游戏
2464: 中山市选[2009]小明的游戏 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 280 Solved: 124[Submit][Statu ...
- bzoj 1022: [SHOI2008]小约翰的游戏John anti_nim游戏
1022: [SHOI2008]小约翰的游戏John Time Limit: 1 Sec Memory Limit: 162 MBSubmit: 1189 Solved: 734[Submit][ ...
- BZOJ 1022 [SHOI2008]小约翰的游戏John
1022: [SHOI2008]小约翰的游戏John Time Limit: 1 Sec Memory Limit: 162 MBSubmit: 1635 Solved: 1036[Submit] ...
- 6、Cocos2dx 3.0游戏开发找小三之游戏的基本概念
重开发人员的劳动成果,转载的时候请务必注明出处:http://blog.csdn.net/haomengzhu/article/details/27689713 郝萌主友情提示: 人是习惯的产物,当你 ...
- 1022: [SHOI2008]小约翰的游戏John
1022: [SHOI2008]小约翰的游戏John Time Limit: 1 Sec Memory Limit: 162 MBSubmit: 1322 Solved: 829[Submit][ ...
随机推荐
- oop五大设计原则
一:单一职责原则单一职责有2个含义,一个是避免相同的职责分散到不同的类中,另一个是避免一个类承担太多职责.减少类的耦合,提高类的复用性. 二:接口隔离原则表明客户端不应该被强迫实现一些他们不会使用的接 ...
- Ubuntu 16.04 LTS设置国内更新源
ubuntu一般多用于开发环境,centos/redhat多用于企业环境.suse多用于银行金融行业!!! 01.ubuntu源地址 /etc/apt/sources.list 02.更新缓存资源索引 ...
- SharePoint中使用C#跳转页面的研究
最近开发SharePoint的时候遇到问题,不能完成跳转,于是归纳了一下方法(最后还是使用了js跳转,后台跳转被sharepoint限制了). 1.最常用的页面跳转(原窗口被替代):Response. ...
- Matlab2015入门学习01
1. 两个命令: clear: 清除内存中变量的值(在workspace中可以看到) clc: 清除Command Window中的输出 2. 脚本编辑器: matlab脚本扩展名为*.m 在Comm ...
- 给RecyclerView最纯粹的下拉刷新和上拉加载更多
转自 http://blog.csdn.net/jerrywu145/article/details/52225898 http://www.jianshu.com/p/3bf125b4917d
- 【Ural】1519. Formula 1
http://acm.timus.ru/problem.aspx?space=1&num=1519 题意:给一个n×m的棋盘,其中'.'是空白,'*'是障碍,求经过所有点的哈密顿回路的数目.( ...
- bzoj1189
1189: [HNOI2007]紧急疏散evacuate Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 2321 Solved: 724[Submi ...
- 基于CentOS-7.2.15的Mono+jexus镜像
公司开发及测试的linux环境为CentOS-7.X,因此以CentOS-7.2.15作为基础镜像,镜像尺寸确实比较大,最终Mono-4.6.0.125+Jexus-5.8.1.10镜像尺寸已将近1G ...
- PHP常用框架
1.Thinkphp thinkphp是国内开发的框架,它有比较易读的手册,和大量的网上资源,所以我推荐大家首选thinkphp. 2.CodeIgniter 前一段时间我用过codeignite ...
- CDN的combo技术能把多个资源文件合并引用,减少请求次数
CDN的combo技术能把多个资源文件合并引用,减少请求次数.比如淘宝的写法: <link rel="stylesheet" href="//g.alicdn.co ...