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="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"> </td>
<td id="12"> </td>
<td id="13"> </td>
<td id="14"> </td>
<td id="15"> </td>
<td id="16"> </td>
<td id="17"> </td>
<td id="18"> </td>
<td id="19"> </td>
</tr>
<tr>
<td id="21"> </td>
<td id="22"> </td>
<td id="23"> </td>
<td id="24"> </td>
<td id="25"> </td>
<td id="26"> </td>
<td id="27"> </td>
<td id="28"> </td>
<td id="29"> </td>
</tr>
<tr>
<td id="31"> </td>
<td id="32"> </td>
<td id="33"> </td>
<td id="34"> </td>
<td id="35"> </td>
<td id="36"> </td>
<td id="37"> </td>
<td id="38"> </td>
<td id="39"> </td>
</tr>
<tr>
<td id="41"> </td>
<td id="42"> </td>
<td id="43"> </td>
<td id="44"> </td>
<td id="45"> </td>
<td id="46"> </td>
<td id="47"> </td>
<td id="48"> </td>
<td id="49"> </td>
</tr>
<tr>
<td id="51"> </td>
<td id="52"> </td>
<td id="53"> </td>
<td id="54"> </td>
<td id="55"> </td>
<td id="56"> </td>
<td id="57"> </td>
<td id="58"> </td>
<td id="59"> </td>
</tr>
<tr>
<td id="61"> </td>
<td id="62"> </td>
<td id="63"> </td>
<td id="64"> </td>
<td id="65"> </td>
<td id="66"> </td>
<td id="67"> </td>
<td id="68"> </td>
<td id="69"> </td>
</tr>
<tr>
<td id="71"> </td>
<td id="72"> </td>
<td id="73"> </td>
<td id="74"> </td>
<td id="75"> </td>
<td id="76"> </td>
<td id="77"> </td>
<td id="78"> </td>
<td id="79"> </td>
</tr>
<tr>
<td id="81"> </td>
<td id="82"> </td>
<td id="83"> </td>
<td id="84"> </td>
<td id="85"> </td>
<td id="86"> </td>
<td id="87"> </td>
<td id="88"> </td>
<td id="89"> </td>
</tr>
<tr>
<td id="91"> </td>
<td id="92"> </td>
<td id="93"> </td>
<td id="94"> </td>
<td id="95"> </td>
<td id="96"> </td>
<td id="97"> </td>
<td id="98"> </td>
<td id="99"> </td>
</tr>
</table>
</body>
</html>
JS扫雷原理性代码的更多相关文章
- 剥开比原看代码12:比原是如何通过/create-account-receiver创建地址的?
作者:freewind 比原项目仓库: Github地址:https://github.com/Bytom/bytom Gitee地址:https://gitee.com/BytomBlockchai ...
- js css样式操作代码(批量操作)
js css样式操作代码(批量操作) 作者: 字体:[增加 减小] 类型:转载 时间:2009-10-09 用js控制css样式,能让网页达到良好的的用户体验甚至是动画的效果.并且考虑到效率. ...
- [JS]以下是JS省市联动菜单代码
以下是JS省市联动菜单代码: 代码一: <html> <head> <title></title> <script language=" ...
- js文字向上滚动代码
js文字向上滚动代码 <style>.pczt_pingfen_jhxs_news1{ width:397px; background:#edfafd; padding-top:2px; ...
- Js弹性漂浮广告代码
<html><head><meta http-equiv="Content-Type" content="text/html; charse ...
- PhoneGap或者Cordova框架下实现Html5中JS调用Android原生代码
PhoneGap或者Cordova框架下实现Html5中JS调用Android原生代码 看看新闻网>看引擎>开源产品 0人收藏此文章, 发表于8小时前(2013-09-06 00:39) ...
- 如何写兼容浏览器和Node.js环境的Javascript代码
如果有打开过jQuery的源码(从1.11及以后),或者Vue.js.React.js的源码,都会在文件的前面看见这样一段代码: ( function( global, factory ) { &qu ...
- 常用的JS页面跳转代码调用大全
一.常规的JS页面跳转代码 1.在原来的窗体中直接跳转用 <script type="text/javascript"> window.location.href=&q ...
- 基于 Koa平台Node.js开发的KoaHub.js连接打印机的代码
最近好多小伙伴都在做微信商城的项目,那就给大家分享一个基于 Koa.js 平台的 Node.js web 开发的框架连接微信易联云打印机接口的代码,供大家学习.koahub-yilianyun 微信易 ...
随机推荐
- 使用maven将GitHub上项目打包作为依赖添加
Clone GitHub项目 git clone https://github.com/LeeKemp/UserAgentParser 将项目打成jar包,安装到maven仓库中 D:\Github ...
- 前端框架---jQuery---一分钟下载使用
这里通过自己手动的方式“做”一个jQuery来使用,需要5步 1. 访问 https://jquery.com 2. 点击download 3. 拉到最下方,点击 JQuery CDN 4. 得到所有 ...
- 20155230 2016-2017-2《Java程序设计》第二周学习总结
20155230 2016-2017-2 <Java程序设计>第er周学习总结 教材学习内容总结 JAVA编程风格 1.命名变量时不可以使用数字及特殊字符作为开头. 2.变量名称不可以与J ...
- 20155323 2016-2017-2 《Java程序设计》第4周学习总结
20155323 2016-2017-2 <Java程序设计>第4周学习总结 教材学习内容总结 继承的目的:继承是为了多态,能够采用父类引用指向子类对象,这样可以让代码更灵活.继承之后可以 ...
- C# Disable CTRL-ALT-DEL, ALT-TAB, ALT-F4, Start Menu and so on…
使用C#禁用系统的某些特定按键 原文地址:http://www.tamas.io/c-disable-ctrl-alt-del-alt-tab-alt-f4-start-menu-and-so-on/ ...
- 分类问题中的“维数灾难” - robotMax
分类问题中的“维数灾难” - robotMax 在看机器学习的论文时,经常会看到有作者提到“curse of dimensionality”,中文译为“维数灾难”,这到底是一个什么样的“灾难”?本文将 ...
- STM32L431驱动带UC1698芯片调试记录
1, 数据线连接方式,这次使用的是8080格式的接口,如下 2. 主要是信号和数据引脚 DATA0-DATA7 并口的数据 RST 复位信号 WR 写信号 RD 读信号 C/D 数据还是命令 CS片 ...
- Linux 优化详解
一.引子 系统优化是一项复杂.繁琐.长期的工作,优化前需要监测.采集.测试.评估,优化后也需要测试.采集.评估.监测,而且是一个长期和持续的过程,不是说现在又花了.测试了,以后就可以一劳永逸,而不是说 ...
- kNN--近邻算法
kNN--近邻算法 kNN算法的核心思想是如果一个样本在特征空间中的k个最相邻的样本中的大多数属于某一个类别,则该样本也属于这个类别,并具有这个类别上样本的特性. 在机器学习中常用于分类. 数学内容: ...
- 移动端rem用法总结
先介绍一下这个近年来突起的黑马 CSS3中新增的属性,从IE9开始兼容,手机端都兼容.参考的是<html>这个标签的font-size.rem中的r就是root根的意思.所以rem要比em ...