您的位置:首页 > Web前端 > JavaScript

javascript写的扫雷(asp版)

2011-10-25 09:38 281 查看
<!--#include file="conn.asp" -->

<html>

<title>扫雷</title>

<head>

<style type="text/css">

<!--

.table2 {

border-top-width: 1px;

border-right-width: 1px;

border-bottom-width: 1px;

border-left-width: 1px;

border-bottom-style: 1px;

border-top-color: #000000;

border-right-color: #000000;

border-bottom-color: #000000;

border-left-color: #000000;

border-top-style: 1px;

border-right-style: 1px;

border-left-style: 1px;

font-size: 14px;

}

-->

</style>

<script type="text/javascript">

var ctime=0

var ttime

function timedCount()

{

document.getElementById('timetxt').value=ctime

ctime=ctime+1

ttime=setTimeout("timedCount()",1000)

}

function finished()

{ var i,j;

for(j=0;j<10;j++)

{for (i=0;i<10;i++)

{

if (barr[j][i]==0)

{return 0}

}

}

return 1

}

function mark0(i,j)

{/*如果在(i,j) (0=<i,j<N) 内地雷数目为0,并把连续的区域都显示*/

var n,i1,j1;

var ijinc=new Array(-1,-1,-1,0,-1,1,0,-1,0,1,1,-1,1,0,1,1);

var x1=document.getElementById('myTable').rows[i].cells

x1[j].innerHTML=0

barr[i][j]=1

for(n=0;n<8;n++)/*扫描周边方格内的数值是否为0*/

{

i1=i+ijinc[n*2+0];

j1=j+ijinc[n*2+1];

if(i1>=0&&i1<10&&j1>=0&&j1<10)

{

if(aarr[i1][j1]==0&&barr[i1][j1]==0)

{mark0(i1,j1)}

else

{

var x1=document.getElementById('myTable').rows[i1].cells

x1[j1].innerHTML=aarr[i1][j1]

barr[i1][j1]=1

}

}

}

}

function show_coords(event)

{

x=parseInt((event.clientX-15)/21)

y=parseInt((event.clientY-19)/22)

//alert("X 坐标: " + x + ", Y 坐标: " + y)

if(x>=0&&x<10&&y>=0&&y<10&&ctime>0)

{

if (event.button==2)

{

//alert("您点击了鼠标右键!")

var x1=document.getElementById('myTable').rows[y].cells

x1[x].innerHTML='*'

if(aarr[y][x]==9)

{barr[y][x]=1}

}

else

{

var x1=document.getElementById('myTable').rows[y].cells

x1[x].innerHTML=aarr[y][x]

barr[y][x]=1

if(aarr[y][x]==9)

{

ctime=ctime+20

alert("您点击了地雷!")

return

}

if(aarr[y][x]==0)

{

mark0(y,x)

}

}

if(finished()==1)

{

clearTimeout(ttime)

alert("您完成了任务!")

}

}

}

function setmine( i,j)

{

//*在(i,j) (0=<i,j<N) 放一枚地雷,并设置周边空格内地雷数目*/

var n,i1,j1;

var ijinc=new Array(-1,-1,-1,0,-1,1,0,-1,0,1,1,-1,1,0,1,1);

if (aarr[i][j]==9)

{return 0}

aarr[i][j]=9;/*标记为地雷*/

for(n=0;n<8;n++)/*标记周边方格内的数值即地雷数*/

{

i1=i+ijinc[n*2+0];

j1=j+ijinc[n*2+1];

if((i1>=0)&&(i1<10) &&(j1>=0)&&(j1<10) &&(aarr[i1][j1]<9))

{aarr[i1][j1]++;}

}

return 1;

}

function ajaxbegin()

{

var xmlHttp;

try

{ // Firefox, Opera 8.0+, Safari

xmlHttp=new XMLHttpRequest();

}

catch (e)

{ // Internet Explorer

try

{

xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");

}

catch (e)

{

try

{

xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");

}

catch (e)

{

alert("您的浏览器不支持AJAX!");

return false;

}

}

}

xmlHttp.open("GET","useradd.asp",true);

xmlHttp.send(null);

}

function ajaxend()

{

var xmlHttp;

try

{ // Firefox, Opera 8.0+, Safari

xmlHttp=new XMLHttpRequest();

}

catch (e)

{ // Internet Explorer

try

{

xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");

}

catch (e)

{

try

{

xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");

}

catch (e)

{

alert("您的浏览器不支持AJAX!");

return false;

}

}

}

xmlHttp.open("GET","usersub.asp",true);

xmlHttp.send(null);

}

</script>

</head>

<body onmousedown="show_coords(event)" oncontextmenu="window.event.returnvalue=false; return false;" onbeforeunload="ajaxend()">

<table id="myTable" width="220" border="1" class="table2" >

<script type="text/javascript">

var i=0,j=0

var time=10

var aarr=new Array(0,0,0,0,0,0,0,0,0,0)

for (i=0;i<10;i++)

{

aarr[i]=new Array(0,0,0,0,0,0,0,0,0,0)

}

var barr=new Array(0,0,0,0,0,0,0,0,0,0)

for (i=0;i<10;i++)

{

barr[i]=new Array(0,0,0,0,0,0,0,0,0,0)

}

while(time>0)

{

i=parseInt(10*Math.random())

j=parseInt(10*Math.random())

if(setmine(i,j)==1)

{time=time-1}

}

for(j=0;j<10;j++)

{

for (i=0;i<10;i++)

{

document.write("<td>"+" "+"</td>")

}

document.write("<tr>")

}

document.write("</table>")

ajaxbegin()

</script>

<form>

<input type="button" value="开始" onClick="timedCount()">

<input type="text" id="timetxt">

</form>

<p>单击看,右键标记,点击地雷加20秒,F5重新开始!</p>

<%

sql="select * from data where id=1"

set rs=conn.execute(sql)

total=rs("totaluser")+1

online=rs("onlineuser")+1

rs.close

set rs=nothing

conn.close

set conn=nothing

response.write("访问次数:")

response.write(total)

response.write(" 在线:")

response.write(online)

%>

</body>

</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: