javascript 扫雷游戏

");
for (var i = 0; i ");
for(var j = 0; j  

");
buffer.append("

");
}
buffer.append("

");
var workarea = document.getElementById("workarea");
workarea.innerHTML = buffer.toString();
mine(); // lay mines at the work area
startTick(); // starting time
}

// periodically update the elapsed time
function displayelapsedTime() {
elapseSpan.innerHTML = elapseTime++;
if (elapseTime > 999)
stopTick();
}

// start up the timer for sweeping mine
function startTick() {
if (tick) stopTick();
elapseTime = 0;
statedNum = 0;
elapseSpan = document.getElementById("elapse");
document.getElementById("message").innerHTML = "";
tick = setInterval(displayelapsedTime, 1000); // start tick
}

// stop the timer
function stopTick() {
clearInterval(tick);
tick = null;
}

// lay mines at the work area
function mine() {
var arr = new Array(totalCellNum);

for(var i = 0; i 0) {
if(col > 0) {
if(document.getElementById((row - 1) + "_" + (col - 1)).mine) //top left
nums++;
}
if(col 0) {
if(document.getElementById((row + 1) + "_" + (col - 1)).mine) //bottom left
nums++;
}
if(col 0)
if(document.getElementById(row + "_" + (col - 1)).mine) //left
nums++;
if(col 0) {
if(col > 0) {
if(document.getElementById((row - 1) + "_" + (col - 1)).state == "mark") //top left
nums++;
}
if(col 0) {
if(document.getElementById((row + 1) + "_" + (col - 1)).state == "mark") //bottom left
nums++;
}
if(col 0)
if(document.getElementById(row + "_" + (col - 1)).state == "mark") //left
nums++;
if(col 0) {
cell.state = "up";
statedNum++;
cell.className = "up";
cell.innerHTML = getColoredNum(cell.nums);

} else {
var a = cell.id.split("_");
var row = parseInt(a[0]);
var col = parseInt(a[1]);
disclose(row, col);
}
isWin();
}
}

// touch the mine, game over
function gameover(element) {
for(var i = 0; i Sorry, you lost the game!";
}

// get colored number, difference number will be colored difference color
function getColoredNum(nums) {
var color;
switch(nums) {
case 1: color = "#0000EE"; break;
case 2: color = "#00AA00"; break;
case 3: color = "#990000"; break;
case 4: color = "#FF0000"; break;
case 5: color = "#550000"; break;
case 6: color = "#550055"; break;
case 7: color = "#223366"; break;
default: color = "#000000";
}
return "" + nums + "";
}

function disclose(row, col) {
var cell = document.getElementById(row + "_" + col);
if(cell && typeof(cell.mine) == "undefined" && typeof(cell.state) == "undefined") {
cell.state = "up";
cell.className = "up";
statedNum++;
if (cell.nums == 0) {
if(row > 0) {
disclose(row - 1, col);
if(col > 0) // top left
disclose(row - 1, col - 1);
if(col 0) // bottom left
disclose(row + 1, col - 1);
if(col 0)
disclose(row, col - 1); // left
if(col Congratulations, you won the game!";
stopTick();
}
}

// when left and right key down
function doubleClick(cell) {
if(typeof(cell.state) == "undefined") {
clickMe(cell);
return;
}

var a = cell.id.split("_");
var row = parseInt(a[0]);
var col = parseInt(a[1]);
if (cell.innerHTML.indexOf(">" + countMarkNum(row, col) + " -1) {
if(row > 0) {
clickMe(document.getElementById((row - 1) + "_" + col));
if(col > 0) // top left
clickMe(document.getElementById((row - 1) + "_" + (col - 1)));
if(col 0) // bottom left
clickMe(document.getElementById((row + 1) + "_" + (col - 1)));
if(col 0)
clickMe(document.getElementById(row + "_" + (col - 1))); // left
if(col

body {
font-size:14px; font-family: verdana;
}
input {
font-size:12px; padding: 0px; margin: 0px;
}
table {border: 2px solid #6E6560;}
td {
height:19px; width:20px;
font-family: Arial Black;
text-align: center;
padding-top:3px;
font-size: 12px;
cursor:default;
border-left: 2px solid #D5D3D0;
border-top: 2px solid #D5D3D0;
border-right: 2px solid #6E6560;
border-bottom: 2px solid #6E6560;
}
.up {
border-right: 2px solid #F6F3F0;
border-bottom: 2px solid #F6F3F0;
background:#F6F3F0;
}

Row:
Column:
Mine Number:

Elapsed Time:

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

(0)

相关推荐

  • js猜数字小游戏的简单实现代码

    复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="

  • JavaScript 打地鼠游戏代码说明

    演示地址:http://demo.jb51.net/js/mouse/index.html打包下载地址 http://www.jb51.net/jiaoben/32434.html这个是我无聊的时候写的,先看看效果(UI做得比较丑):  说明:红色的点击得分100,蓝色的点击扣分100. 只是想用js来写个小游戏,顺便练练js的代码. 先看html部分: html 复制代码 代码如下: <style> #panel{height:300px;width:300px;background:#cc

  • 使用纯javascript实现经典扫雷游戏

    很久以前写的 当时都没写注释的 刚加上了 (尼玛,好多自己都不认识了 ... ) 不足的地方就是本来想写个游戏排名的统计的,等有空了再加上(好像每次都这么说 然后就等好久好久...) 还有就是没有实现:点击第一个格子不能是雷的功能 <style> ul{padding:0;list-style:none;} #mine{overflow:hidden;width:30px;height:30px;border:1px solid #966;} #mine li{float:left;width

  • JS写的贪吃蛇游戏(个人练习)

    JS贪吃蛇游戏,个人练习之用,放在这备份一下,   复制代码 代码如下: <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>JS贪吃蛇-练习</t

  • 原创javascript小游戏实现代码

    以下是代码: 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-eq

  • js实现大转盘抽奖游戏实例

    本文实例讲述了js实现大转盘抽奖游戏.分享给大家供大家参考.具体实现方法如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <hea

  • 原生JavaScript实现连连看游戏(附源码)

    向大家推荐一款原生JavaScript版连连看游戏,源码下载,首页如下图所示:  首先看一下html的布局方式在index.html文件中: 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head>

  • javascript实现2048游戏示例

    原生javascript代码写的2048游戏.建议在谷歌浏览器下跑. 2048.html 复制代码 代码如下: <!DOCTYPE><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>2048

  • JavaScript版经典游戏之扫雷游戏完整示例【附demo源码下载】

    本文实例讲述了JavaScript扫雷游戏.分享给大家供大家参考,具体如下: 翻出年初写的游戏贴上来,扫雷相信大家都玩过,先上图: 源码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.or

  • javascript 制作坦克大战游戏初步 图片与代码

    学了一阵子的javascript,该做点东西,虽然东西还是东拼西凑,见笑.方向键控制坦克移动,回车键发射炸弹.其他的功能敌方坦克那些还没写. javascript坦克游戏初步|阿会楠练习作品 body{ background:black; } #tanke{ position:absolute; left:500px; top:200px; } var i = 0; var bombLeftArray = new Array(100);//存放炸弹信息x var bombTopArray = n

  • JS网络游戏-(模拟城市webgame)提供的一些例子下载

    网上有好多模拟城市系统,但好像也多半是FLASH开发的. 目前这个采用的寻路等核心脚本都是用JS实现的.大部分图片素材修改自网络. 这个版本仅为DEMO,但比以前做的相对好点.相信下个版本可以完整的做出来了 地址 (不能同时登陆多个帐号)http://www.xuanhun.cn/city/ 整理了开发前做的两个单机版的例子有兴趣的可以下载来看看.有些地方比较乱,别骂我啊(如果要做网络版的,不够清楚的地方可以相互交流下.)聊天需要IIS支持http://down.lyx789.com/down/

  • 纯JS实现五子棋游戏兼容各浏览器(附源码)

    纯JS五子棋(各浏览器兼容) 效果图:  代码下载 HTML代码 复制代码 代码如下: <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html;"> <title>五子棋</title> <link rel="stylesheet" type="text/

  • js方块躲避游戏代码

    鼠标拖动红色方块,就可以开始,不要让蓝色方块碰到你控制的红色方块 www.jb51.net我们 Escapa!红方块躲避游戏 isNS4 = (document.layers) ? true : false; isIE4 = (document.all && !document.getElementById) ? true : false; isIE5 = (document.all && document.getElementById) ? true : false; i

随机推荐