<!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. 20155233 2006-2007-2 《Java程序设计》第2周学习总结

    20155233 2006-2007-2 <Java程序设计>第2周学习总结 教材学习内容总结 本章主要学习Java的基础语法,这些语法在C语言的学习中基本上都涉及到过,基本上,Java可 ...

  2. 20155339《java程序设计》第一次实验报告

    20155339<java程序设计>第一次实验报告 实验一 java开发环境的熟悉 实验内容 1.使用JDK编译.运行简单的java程序: 2.使用IDEA编辑.编译.运行.调试java程 ...

  3. [BZOJ1185][HNOI2007]最小矩形覆盖-[凸包+旋转卡壳]

    Description 传送门 Solution 感性理解一下,最小矩形一定是由一条边和凸包上的边重合的. 然后它就是模板题了..然而真的好难调,小于大于动不动就打错. Code #include&l ...

  4. RHCSA-考前准备

    1.考前准备 RHCSA classroom虚拟机和server虚拟机 将两台虚拟机切换到初始化快照 打开虚拟机电源,当出现提示时选择我已移动该虚拟机 系统密码: classroom: root As ...

  5. 2288: 【POJ Challenge】生日礼物

    2288: [POJ Challenge]生日礼物 https://lydsy.com/JudgeOnline/problem.php?id=2288 分析: 贪心+堆+链表. 首先把序列变一下,把相 ...

  6. MSP430编译器__intrinsic指令

    1. 在文件intrinsics.c里面发现很多函数前面有__intrinsic,说是这些是MSP430的特定函数(其他单片机用不了),应该和编译器有关,并没有具体的函数实现,我猜测,是直接转成汇编代 ...

  7. maven 手动安装jar包

    1.问题 maven有时候在pom文件引入jar包会报错,所以可以通过手动导入jar包的方式导入. 2.解决: 通过maven命令导入jar包, mvn install:install-file -D ...

  8. NO.02---聊聊Vue提升

    如果本篇有看不明白的地方,请翻阅上一篇文章 上一篇我们讲了如何通过一些简单的动作来改变 store.js 中的数据对象,在实际工作中,这是完全无法满足工作需求的,所以这篇我们来说说如何做一些简单的流程 ...

  9. 《More Effective C++》读书笔记(零)Basic 基础条款

    这是篇读书笔记,只记录自己的理解和总结,一般情况不对其举例子具体说明,因为那正是书本身做的事情,我的笔记作为梳理和复习之用,划重点.我推荐学C++的人都好好读一遍Effective C++ 系列,真是 ...

  10. Java如何调用shell脚本的

    有些时候会碰到这样的场景:java的功能里面要嵌入一个功能点,这个功能是通过是shell脚本实现的.这种时候就需要Java对脚本调用的支持了. 测试环境 Ubuntu16.04 i3-6100,12G ...