<!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小游戏---智力游戏的更多相关文章

  1. 一个js小游戏----总结

    花了大概一天左右的功夫实现了一个js小游戏的基本功能,类似于“雷电”那样的小游戏,实现了随即怪物发生器,碰撞检测,运动等等都实现了,下一个功能是子弹轨迹,还有其他一些扩展功能,没有用库,也没有用web ...

  2. html+css+js实现网页拼图游戏

    代码地址如下:http://www.demodashi.com/demo/14449.html 项目描述 使用 html+js+css 实现一个网页拼图游戏,可支持简单,中等,困难三种难度. 演示效果 ...

  3. BZOJ_1022_[SHOI2008]_小约翰的游戏John_(博弈论_反Nim游戏)

    描述 http://www.lydsy.com/JudgeOnline/problem.php?id=1022 反Nim游戏裸题.详见论文<组合游戏略述——浅谈SG游戏的若干拓展及变形>. ...

  4. SHOI2008小约翰的游戏John

    1022: [SHOI2008]小约翰的游戏John Time Limit: 1 Sec  Memory Limit: 162 MBSubmit: 1139  Solved: 701[Submit][ ...

  5. BZOJ2464: 中山市选[2009]小明的游戏

    2464: 中山市选[2009]小明的游戏 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 280  Solved: 124[Submit][Statu ...

  6. bzoj 1022: [SHOI2008]小约翰的游戏John anti_nim游戏

    1022: [SHOI2008]小约翰的游戏John Time Limit: 1 Sec  Memory Limit: 162 MBSubmit: 1189  Solved: 734[Submit][ ...

  7. BZOJ 1022 [SHOI2008]小约翰的游戏John

    1022: [SHOI2008]小约翰的游戏John Time Limit: 1 Sec  Memory Limit: 162 MBSubmit: 1635  Solved: 1036[Submit] ...

  8. 6、Cocos2dx 3.0游戏开发找小三之游戏的基本概念

    重开发人员的劳动成果,转载的时候请务必注明出处:http://blog.csdn.net/haomengzhu/article/details/27689713 郝萌主友情提示: 人是习惯的产物,当你 ...

  9. 1022: [SHOI2008]小约翰的游戏John

    1022: [SHOI2008]小约翰的游戏John Time Limit: 1 Sec  Memory Limit: 162 MBSubmit: 1322  Solved: 829[Submit][ ...

随机推荐

  1. 使用java库中的对称加密算法

    对称加密算法是说加密方和解密方使用相同的密钥.常见的对称加密算法包括4个,DES,DESede(3DES),AES,PBE. 本文讨论的内容是加密算法,不是Message Digest,不是编码.下面 ...

  2. jQuery之Ajax--全局Ajax事件处理器

    1.这些方法用于注册事件处理器,用来处理页面上的任何 Ajax 请求,当某些事件触发后,这些事件处理器被调用.如果jQuery.ajaxSteup()中的 global 属性被设置为 true (这也 ...

  3. ScrollView中嵌套recycleView 出现的不显示,显示不全,终极解决方案

    最近公司项目中用到了ScrollView去嵌套recycleView, 最开始我天真的把recycleView直接放入scrollView中,结果可想而知,什么都不显示,瞬间懵逼,我心想应该是和嵌套L ...

  4. download ncRNA sequences form NCBI

    #!/bin/bash usage() { echo;echo "Usage: ./`basename $0` [gi number list] [number of cpu]"; ...

  5. CentOS 6.8_x64 Oracle 12C 安装

    1.下载地址 (需要注册oracle账号) 点击 2.登录CentOS 做准备工作 groupadd oinstall groupadd dba useradd -g oinstall -g dba ...

  6. noip2016十连测round3

    A:平均数 题意:有一天,小 A 得到了一个长度为 n 的序列. 他把这个序列的所有连续子序列都列了出来,并对每一个子序列都求了其平均值,然后他把这些平均值写在纸上,并对它们进行排序,最后他报出了第 ...

  7. 牛顿法|阻尼牛顿法|拟牛顿法|DFP算法|BFGS算法|L-BFGS算法

    一直记不住这些算法的推导,所以打算详细点写到博客中以后不记得就翻阅自己的笔记. 泰勒展开式 最初的泰勒展开式,若  在包含  的某开区间(a,b)内具有直到n+1阶的导数,则当x∈(a,b)时,有: ...

  8. c# .Net :Excel NPOI导入导出操作教程之读取Excel文件信息及输出

    c# .Net :Excel NPOI导入导出操作教程之读取Excel文件信息及输出 using NPOI.HSSF.UserModel;using NPOI.SS.UserModel;using S ...

  9. Ambari——大数据平台的搭建利器

    转载自http://www.ibm.com/developerworks/cn/opensource/os-cn-bigdata-ambari/ 扩展 Ambari 管理一个自定义的 Service ...

  10. Python Day6

    面向对象 概述 面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象:对函数进行分类和封装,让开发"更快更好更强...&qu ...