不错呦!smile@林凯西,确保“准备文件”中的几个文件都有安装,S...您好,看了您这篇帖子觉得很有帮助。但是有个问题想请...我的修改过了怎么还被恶意注册呢 @jjjjiiii 用PJ快9年了,主要是A...PJ3啊,貌似很少有人用PJ了,现在不是WP就是z...@332347365,我当时接入时错误码没有-10...楼主,ChkValue值应为-103是什么意思呢?...大哥 你最近能看到我发的信息,请跟我联系,我有个制...
Js版连连看V1.0
编辑:dnawo 日期:2008-12-15
复制内容到剪贴板 程序代码
<html>
<head>
<style type="text/css">
input {width:22px;height:22px;}
</style>
</head>
<body>
<script type="text/javascript">
//Cody by:dnawo
var rows = 8;//行
var cols = 8;//列
var type = 4;//种类
var arrPoint = [];//全部坐标点
var selPoint = [null,null];//选中坐标
var count = 0;//已选中的点总数
//生成随机数
var rnd = [];
for(var i=1;i<=(rows-2)*(cols-2)/2;i++)
{
var r = parseInt(Math.random()*type+1);
rnd[rnd.length]=rnd[rnd.length+1]=r;
}
//生成界面
for(var i=0;i<rows;i++)
{
arrPoint[i] = [];
for(var j=0;j<cols;j++)
{
var o = document.createElement("input");
//最外一层不显示
if(i>0 && i<rows-1 && j>0 && j<cols-1)
{
var k = parseInt(Math.random()*rnd.length);
var value = rnd[k];
rnd.splice(k,1);
o.type = "button";
o.setAttribute("value",value);
o.setAttribute("v",value);
o.setAttribute("onclick",function(){savePoint(this);});
}
else
{
o.type = "hidden";
o.setAttribute("value","");
o.setAttribute("v",null);
}
o.setAttribute("x",i);
o.setAttribute("y",j);
arrPoint[i][j] = o;
document.body.appendChild(arrPoint[i][j]);
}
document.write("<br/>");
}
//存储选择对象
function savePoint(o)
{
if(o.v != null)
{
if(selPoint[0]!=null && selPoint[1]!=null)
{
selPoint[0] = null;
selPoint[1] = null;
}
if(selPoint[0] == null)
{
selPoint[0] = o;
}
else
{
//选择同一个对象,本次选择取消
if(selPoint[0] == o)
{
selPoint[0] = null;
selPoint[1] = null;
}
else
{
selPoint[1] = o;
//值相同则进行连线
if(selPoint[0].v == selPoint[1].v)
{
if(!isLine(selPoint[0],selPoint[1]))
{
var arrTmp1=[],arrTmp2=[];
if(selPoint[0].x != selPoint[1].x)
{
//selPoint[0]横左
for(var i=selPoint[0].y-1;i>=0;i--){if(arrPoint[selPoint[0].x][i].v == null){arrTmp1[arrTmp1.length]=arrPoint[selPoint[0].x][i]}else{break;}};
//selPoint[0]横右
for(var i=selPoint[0].y+1;i<cols;i++){if(arrPoint[selPoint[0].x][i].v == null){arrTmp1[arrTmp1.length]=arrPoint[selPoint[0].x][i]}else{break;}};
//一折
arrTmp1[arrTmp1.length] = arrPoint[selPoint[0].x][selPoint[0].y];
//selPoint[1]横左
for(var i=selPoint[1].y-1;i>=0;i--){if(arrPoint[selPoint[1].x][i].v == null){arrTmp2[arrTmp2.length]=arrPoint[selPoint[1].x][i]}else{break;}};
//selPoint[1]横右
for(var i=selPoint[1].y+1;i<cols;i++){if(arrPoint[selPoint[1].x][i].v == null){arrTmp2[arrTmp2.length]=arrPoint[selPoint[1].x][i]}else{break;}};
//一折
arrTmp2[arrTmp2.length] = arrPoint[selPoint[1].x][selPoint[1].y];
for(var i=0;i<arrTmp1.length;i++)
{
for(var j=0;j<arrTmp2.length;j++)
{
if(arrTmp1[i].y == arrTmp2[j].y)
{
//连线
if(isLine(arrTmp1[i],arrTmp2[j]))
{
selPoint[0].value = "";
selPoint[0].v = null;
selPoint[1].value = "";
selPoint[1].v = null;
count +=2;
if(count == (rows-2)*(cols-2))
{
alert("恭喜你,过关了!");
}
return;
}
}
}
}
}
arrTmp1=[];arrTmp2=[];
if(selPoint[0].y != selPoint[1].y)
{
//selPoint[0]竖上
for(var i=selPoint[0].x-1;i>=0;i--){if(arrPoint[i][selPoint[0].y].v == null){arrTmp1[arrTmp1.length]=arrPoint[i][selPoint[0].y]}else{break;}};
//selPoint[0]竖下
for(var i=selPoint[0].x+1;i<rows;i++){if(arrPoint[i][selPoint[0].y].v == null){arrTmp1[arrTmp1.length]=arrPoint[i][selPoint[0].y]}else{break;}};
//一折
arrTmp1[arrTmp1.length] = arrPoint[selPoint[0].x][selPoint[0].y];
//selPoint[1]竖上
for(var i=selPoint[1].x-1;i>=0;i--){if(arrPoint[i][selPoint[1].y].v == null){arrTmp2[arrTmp2.length]=arrPoint[i][selPoint[1].y]}else{break;}};
//selPoint[1]竖下
for(var i=selPoint[1].x+1;i<rows;i++){if(arrPoint[i][selPoint[1].y].v == null){arrTmp2[arrTmp2.length]=arrPoint[i][selPoint[1].y]}else{break;}};
//一折
arrTmp2[arrTmp2.length] = arrPoint[selPoint[1].x][selPoint[1].y];
for(var i=0;i<arrTmp1.length;i++)
{
for(var j=0;j<arrTmp2.length;j++)
{
if(arrTmp1[i].x == arrTmp2[j].x)
{
//连线
if(isLine(arrTmp1[i],arrTmp2[j]))
{
selPoint[0].value = "";
selPoint[0].v = null;
selPoint[1].value = "";
selPoint[1].v = null;
count +=2;
if(count == (rows-2)*(cols-2))
{
alert("恭喜你,过关了!");
}
return;
}
}
}
}
}
}
else
{
selPoint[0].value = "";
selPoint[0].v = null;
selPoint[1].value = "";
selPoint[1].v = null;
count +=2;
if(count == (rows-2)*(cols-2))
{
alert("恭喜你,过关了!");
}
return;
}
}
}
}
}
}
//判断是否可直线相连
function isLine(p1,p2)
{
var tmpPoint = null;
//水平搜索
if(p1.x == p2.x)
{
tmpPoint = p1;
if(tmpPoint.y>p2.y)
{
p1 = p2;
p2 = tmpPoint;
}
for(var i=p1.y+1;i<p2.y;i++)
{
if(arrPoint[p1.x][i].v != null)return false;
}
return true;
}
//垂直搜索
else if(p1.y == p2.y)
{
tmpPoint = p1;
if(tmpPoint.x>p2.x)
{
p1 = p2;
p2 = tmpPoint;
}
for(var i=p1.x+1;i<p2.x;i++)
{
if(arrPoint[i][p1.y].v != null)return false;
}
return true;
}
else
{
return false;
}
}
</script>
</body>
</html>
<head>
<style type="text/css">
input {width:22px;height:22px;}
</style>
</head>
<body>
<script type="text/javascript">
//Cody by:dnawo
var rows = 8;//行
var cols = 8;//列
var type = 4;//种类
var arrPoint = [];//全部坐标点
var selPoint = [null,null];//选中坐标
var count = 0;//已选中的点总数
//生成随机数
var rnd = [];
for(var i=1;i<=(rows-2)*(cols-2)/2;i++)
{
var r = parseInt(Math.random()*type+1);
rnd[rnd.length]=rnd[rnd.length+1]=r;
}
//生成界面
for(var i=0;i<rows;i++)
{
arrPoint[i] = [];
for(var j=0;j<cols;j++)
{
var o = document.createElement("input");
//最外一层不显示
if(i>0 && i<rows-1 && j>0 && j<cols-1)
{
var k = parseInt(Math.random()*rnd.length);
var value = rnd[k];
rnd.splice(k,1);
o.type = "button";
o.setAttribute("value",value);
o.setAttribute("v",value);
o.setAttribute("onclick",function(){savePoint(this);});
}
else
{
o.type = "hidden";
o.setAttribute("value","");
o.setAttribute("v",null);
}
o.setAttribute("x",i);
o.setAttribute("y",j);
arrPoint[i][j] = o;
document.body.appendChild(arrPoint[i][j]);
}
document.write("<br/>");
}
//存储选择对象
function savePoint(o)
{
if(o.v != null)
{
if(selPoint[0]!=null && selPoint[1]!=null)
{
selPoint[0] = null;
selPoint[1] = null;
}
if(selPoint[0] == null)
{
selPoint[0] = o;
}
else
{
//选择同一个对象,本次选择取消
if(selPoint[0] == o)
{
selPoint[0] = null;
selPoint[1] = null;
}
else
{
selPoint[1] = o;
//值相同则进行连线
if(selPoint[0].v == selPoint[1].v)
{
if(!isLine(selPoint[0],selPoint[1]))
{
var arrTmp1=[],arrTmp2=[];
if(selPoint[0].x != selPoint[1].x)
{
//selPoint[0]横左
for(var i=selPoint[0].y-1;i>=0;i--){if(arrPoint[selPoint[0].x][i].v == null){arrTmp1[arrTmp1.length]=arrPoint[selPoint[0].x][i]}else{break;}};
//selPoint[0]横右
for(var i=selPoint[0].y+1;i<cols;i++){if(arrPoint[selPoint[0].x][i].v == null){arrTmp1[arrTmp1.length]=arrPoint[selPoint[0].x][i]}else{break;}};
//一折
arrTmp1[arrTmp1.length] = arrPoint[selPoint[0].x][selPoint[0].y];
//selPoint[1]横左
for(var i=selPoint[1].y-1;i>=0;i--){if(arrPoint[selPoint[1].x][i].v == null){arrTmp2[arrTmp2.length]=arrPoint[selPoint[1].x][i]}else{break;}};
//selPoint[1]横右
for(var i=selPoint[1].y+1;i<cols;i++){if(arrPoint[selPoint[1].x][i].v == null){arrTmp2[arrTmp2.length]=arrPoint[selPoint[1].x][i]}else{break;}};
//一折
arrTmp2[arrTmp2.length] = arrPoint[selPoint[1].x][selPoint[1].y];
for(var i=0;i<arrTmp1.length;i++)
{
for(var j=0;j<arrTmp2.length;j++)
{
if(arrTmp1[i].y == arrTmp2[j].y)
{
//连线
if(isLine(arrTmp1[i],arrTmp2[j]))
{
selPoint[0].value = "";
selPoint[0].v = null;
selPoint[1].value = "";
selPoint[1].v = null;
count +=2;
if(count == (rows-2)*(cols-2))
{
alert("恭喜你,过关了!");
}
return;
}
}
}
}
}
arrTmp1=[];arrTmp2=[];
if(selPoint[0].y != selPoint[1].y)
{
//selPoint[0]竖上
for(var i=selPoint[0].x-1;i>=0;i--){if(arrPoint[i][selPoint[0].y].v == null){arrTmp1[arrTmp1.length]=arrPoint[i][selPoint[0].y]}else{break;}};
//selPoint[0]竖下
for(var i=selPoint[0].x+1;i<rows;i++){if(arrPoint[i][selPoint[0].y].v == null){arrTmp1[arrTmp1.length]=arrPoint[i][selPoint[0].y]}else{break;}};
//一折
arrTmp1[arrTmp1.length] = arrPoint[selPoint[0].x][selPoint[0].y];
//selPoint[1]竖上
for(var i=selPoint[1].x-1;i>=0;i--){if(arrPoint[i][selPoint[1].y].v == null){arrTmp2[arrTmp2.length]=arrPoint[i][selPoint[1].y]}else{break;}};
//selPoint[1]竖下
for(var i=selPoint[1].x+1;i<rows;i++){if(arrPoint[i][selPoint[1].y].v == null){arrTmp2[arrTmp2.length]=arrPoint[i][selPoint[1].y]}else{break;}};
//一折
arrTmp2[arrTmp2.length] = arrPoint[selPoint[1].x][selPoint[1].y];
for(var i=0;i<arrTmp1.length;i++)
{
for(var j=0;j<arrTmp2.length;j++)
{
if(arrTmp1[i].x == arrTmp2[j].x)
{
//连线
if(isLine(arrTmp1[i],arrTmp2[j]))
{
selPoint[0].value = "";
selPoint[0].v = null;
selPoint[1].value = "";
selPoint[1].v = null;
count +=2;
if(count == (rows-2)*(cols-2))
{
alert("恭喜你,过关了!");
}
return;
}
}
}
}
}
}
else
{
selPoint[0].value = "";
selPoint[0].v = null;
selPoint[1].value = "";
selPoint[1].v = null;
count +=2;
if(count == (rows-2)*(cols-2))
{
alert("恭喜你,过关了!");
}
return;
}
}
}
}
}
}
//判断是否可直线相连
function isLine(p1,p2)
{
var tmpPoint = null;
//水平搜索
if(p1.x == p2.x)
{
tmpPoint = p1;
if(tmpPoint.y>p2.y)
{
p1 = p2;
p2 = tmpPoint;
}
for(var i=p1.y+1;i<p2.y;i++)
{
if(arrPoint[p1.x][i].v != null)return false;
}
return true;
}
//垂直搜索
else if(p1.y == p2.y)
{
tmpPoint = p1;
if(tmpPoint.x>p2.x)
{
p1 = p2;
p2 = tmpPoint;
}
for(var i=p1.x+1;i<p2.x;i++)
{
if(arrPoint[i][p1.y].v != null)return false;
}
return true;
}
else
{
return false;
}
}
</script>
</body>
</html>
评论: 0 | 引用: 0 | 查看次数: 4592
发表评论
请登录后再发表评论!