<!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="Content-Type" content="text/html; charset=gb2312" />
<title>寻雷</title>
<style type="text/css">
<!--
td {
font-size: 18px;
font-weight: bold;
color: #FF0000;
text-align: center;
height: 25px;
width: 25px;
border-top-width: 1px;
border-right-width: 2px;
border-bottom-width: 2px;
border-left-width: 1px;
border-top-style: solid;
border-right-style: solid;
border-bottom-style: solid;
border-left-style: solid;
border-top-color: #0000FF;
border-right-color: #0000FF;
border-bottom-color: #0000FF;
border-left-color: #0000FF;
}
div {
font-family: "宋体", "新宋体", "黑体";
font-size: 12px;
font-weight: bold;
color: #006600;
float: none;
margin-right: auto;
margin-left: auto;
height: 100px;
width: 500px;
text-align: center;
}
-->
</style>
<script language="javascript">
var data=new Array(
[0,0,0,0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0,0,0,0]
);
var count=0;
do{
var a=1+Math.round(8*(Math.random()));
var b=1+Math.round(8*(Math.random()));
if(data[a][b]==0){
data[a][b]="shit";
count+=1;
}
}while(count<10)
for(var i=1;i<10;i++){
for(var j=1;j<10;j++){
if(data[i][j]!="shit"){
var counter=0;
if(data[i-1][j-1]=="shit") counter+=1;
if(data[i-1][j]=="shit") counter+=1;
if(data[i-1][j+1]=="shit") counter+=1;
if(data[i][j-1]=="shit") counter+=1;
if(data[i][j+1]=="shit") counter+=1;
if(data[i+1][j-1]=="shit") counter+=1;
if(data[i+1][j]=="shit") counter+=1;
if(data[i+1][j+1]=="shit") counter+=1;
data[i][j]=counter;
}
}
}
function pop(){
event.bubbles=true;
var number=parseInt(event.srcElement.getAttribute("id"));
var j=number % 10;
var i=(number-j)/10;
if(data[i][j]=="shit"){
alert("中雷了");
check();
return;
}
if(data[i][j]==0){
for(var p=i-1;p<i+2;p++){
for(var q=j-1;q<j+2;q++){
var r="" +p+""+q;
var oElement=document.getElementById(r);
if(oElement){
oElement.innerHTML=data[p][q];
}
}
}
return;
}
document.getElementById(event.srcElement.getAttribute("id")).innerHTML=data[i][j];
}
function check(){
for(var i=1;i<10;i++){
for(var j=1;j<10;j++){
var no="" + i+""+j;
document.getElementById(no).innerHTML=data[i][j];
}
}
}
</script>
</head> <body>
<table id="lei" border="1" align="center" onclick="pop();" >
<tr>
<td id="11">&nbsp;</td>
<td id="12">&nbsp;</td>
<td id="13">&nbsp;</td>
<td id="14">&nbsp;</td>
<td id="15">&nbsp;</td>
<td id="16">&nbsp;</td>
<td id="17">&nbsp;</td>
<td id="18">&nbsp;</td>
<td id="19">&nbsp;</td>
</tr>
<tr>
<td id="21">&nbsp;</td>
<td id="22">&nbsp;</td>
<td id="23">&nbsp;</td>
<td id="24">&nbsp;</td>
<td id="25">&nbsp;</td>
<td id="26">&nbsp;</td>
<td id="27">&nbsp;</td>
<td id="28">&nbsp;</td>
<td id="29">&nbsp;</td>
</tr>
<tr>
<td id="31">&nbsp;</td>
<td id="32">&nbsp;</td>
<td id="33">&nbsp;</td>
<td id="34">&nbsp;</td>
<td id="35">&nbsp;</td>
<td id="36">&nbsp;</td>
<td id="37">&nbsp;</td>
<td id="38">&nbsp;</td>
<td id="39">&nbsp;</td>
</tr>
<tr>
<td id="41">&nbsp;</td>
<td id="42">&nbsp;</td>
<td id="43">&nbsp;</td>
<td id="44">&nbsp;</td>
<td id="45">&nbsp;</td>
<td id="46">&nbsp;</td>
<td id="47">&nbsp;</td>
<td id="48">&nbsp;</td>
<td id="49">&nbsp;</td>
</tr>
<tr>
<td id="51">&nbsp;</td>
<td id="52">&nbsp;</td>
<td id="53">&nbsp;</td>
<td id="54">&nbsp;</td>
<td id="55">&nbsp;</td>
<td id="56">&nbsp;</td>
<td id="57">&nbsp;</td>
<td id="58">&nbsp;</td>
<td id="59">&nbsp;</td>
</tr>
<tr>
<td id="61">&nbsp;</td>
<td id="62">&nbsp;</td>
<td id="63">&nbsp;</td>
<td id="64">&nbsp;</td>
<td id="65">&nbsp;</td>
<td id="66">&nbsp;</td>
<td id="67">&nbsp;</td>
<td id="68">&nbsp;</td>
<td id="69">&nbsp;</td>
</tr>
<tr>
<td id="71">&nbsp;</td>
<td id="72">&nbsp;</td>
<td id="73">&nbsp;</td>
<td id="74">&nbsp;</td>
<td id="75">&nbsp;</td>
<td id="76">&nbsp;</td>
<td id="77">&nbsp;</td>
<td id="78">&nbsp;</td>
<td id="79">&nbsp;</td>
</tr>
<tr>
<td id="81">&nbsp;</td>
<td id="82">&nbsp;</td>
<td id="83">&nbsp;</td>
<td id="84">&nbsp;</td>
<td id="85">&nbsp;</td>
<td id="86">&nbsp;</td>
<td id="87">&nbsp;</td>
<td id="88">&nbsp;</td>
<td id="89">&nbsp;</td>
</tr>
<tr>
<td id="91">&nbsp;</td>
<td id="92">&nbsp;</td>
<td id="93">&nbsp;</td>
<td id="94">&nbsp;</td>
<td id="95">&nbsp;</td>
<td id="96">&nbsp;</td>
<td id="97">&nbsp;</td>
<td id="98">&nbsp;</td>
<td id="99">&nbsp;</td>
</tr>
</table>
</body>
</html>

JS扫雷原理性代码的更多相关文章

  1. 剥开比原看代码12:比原是如何通过/create-account-receiver创建地址的?

    作者:freewind 比原项目仓库: Github地址:https://github.com/Bytom/bytom Gitee地址:https://gitee.com/BytomBlockchai ...

  2. js css样式操作代码(批量操作)

    js css样式操作代码(批量操作) 作者: 字体:[增加 减小] 类型:转载 时间:2009-10-09   用js控制css样式,能让网页达到良好的的用户体验甚至是动画的效果.并且考虑到效率.   ...

  3. [JS]以下是JS省市联动菜单代码

    以下是JS省市联动菜单代码: 代码一: <html> <head> <title></title> <script language=" ...

  4. js文字向上滚动代码

    js文字向上滚动代码 <style>.pczt_pingfen_jhxs_news1{ width:397px;  background:#edfafd; padding-top:2px; ...

  5. Js弹性漂浮广告代码

    <html><head><meta http-equiv="Content-Type" content="text/html; charse ...

  6. PhoneGap或者Cordova框架下实现Html5中JS调用Android原生代码

    PhoneGap或者Cordova框架下实现Html5中JS调用Android原生代码 看看新闻网>看引擎>开源产品 0人收藏此文章, 发表于8小时前(2013-09-06 00:39) ...

  7. 如何写兼容浏览器和Node.js环境的Javascript代码

    如果有打开过jQuery的源码(从1.11及以后),或者Vue.js.React.js的源码,都会在文件的前面看见这样一段代码: ( function( global, factory ) { &qu ...

  8. 常用的JS页面跳转代码调用大全

    一.常规的JS页面跳转代码 1.在原来的窗体中直接跳转用 <script type="text/javascript"> window.location.href=&q ...

  9. 基于 Koa平台Node.js开发的KoaHub.js连接打印机的代码

    最近好多小伙伴都在做微信商城的项目,那就给大家分享一个基于 Koa.js 平台的 Node.js web 开发的框架连接微信易联云打印机接口的代码,供大家学习.koahub-yilianyun 微信易 ...

随机推荐

  1. SpringBoot入门案例——创建maven Module方式

    最近看到一个大牛写的spring boot案例,链接贴这 https://github.com/ityouknow/spring-boot-examples.git 这里通过在maven里创建多个mo ...

  2. RandomAccessFile java

    RandomAccessFile 用来支持读写随机存取文件的类.提供“文件指针”,类似于游标和下标,使用getFilePointer()方法获得,利用seek()方法设置下标. public Rand ...

  3. 20155206 2016-2017-2 《Java程序设计》第4周学习总结

    20155206 2006-2007-2 <Java程序设计>第4周学习总结 教材学习内容总结 继承: 避免多个类间重复定义共同行为,在编写程序的过程中可能会出现部分代码重复的现象,把重复 ...

  4. Centos安装man功能

    CentOS接触很久了,但是一直作为服务器端使用.这次之所以安装man,是由于开始学习Nginx了. 言归正传,安装man,首先得下载包.由于我们天朝的原因,代码包几乎下不到的.首先你得FQ,再下载, ...

  5. day7 RHCE

    6.配置本地邮件服务 在系统server0和desktop0上配置邮件服务,满足以下要求:这些系统不接收外部发送来的邮件这些系统上本地发送的任何邮件都会自动路由到 classroom.example. ...

  6. 【LG5017】[NOIP2018pj]摆渡车

    [LG5017][NOIP2018pj]摆渡车 题面 洛谷 题解 震惊!普及组竟然考斜率优化??? 当然有其他的方法 首先我们转化一下模型 此题可以变为: 在一根时间轴上有一些点,每个时间点\(i\) ...

  7. virsh常用维护命令

    virsh常用命令 一些常用命令参数 [root@kvm-server ~]# virsh --help                                     #查看命令帮忙 [ro ...

  8. 17、JAVA多线程和并发基础面试问答

    JAVA多线程和并发基础面试问答 原文链接:http://ifeve.com/java-multi-threading-concurrency-interview-questions-with-ans ...

  9. R的数据结构

    R语言中的数据结构包括标量.向量.矩阵.数组.列表以及数据框 目录 1 向量 2 矩阵 3 数据框 1 向量 向量是用于存储单一数据类型(数值.字符.逻辑值)的一维数组,示例如下: a <- c ...

  10. Linux 内核3.10.5 专场

    今天本人十分靠谱地下载了linux 内核的3.10.5版本,这个版本是最新的稳定版. 听路飞大虾(哪个路飞?就是那个戴草帽的橡胶小伙,航海很多时候都很空闲的,于是最近他也开始研读linux 内核了.) ...