日期:2014-05-16 浏览次数:20497 次
<!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> <title>1</title> <meta http-equiv="Content-type" content="text/html; charset=utf-8" /> <style type="text/css"> *{margin:0;padding:0} body{width:600px;margin:40px auto;} td{width:50px;height:50px;border:solid 1px #000000;text-align: center;cursor:pointer;} </style> </head> <body> <a href="javascript:reset();">reset</a> <div id="main"></div> <script> var status;//状态 var p1='player1'; var p2='player2'; var pcrt=p1; //默认1先手 reset(); // ------------------------------------------------------------------ // 人机对战 function cpt(){ } // ------------------------------------------------------------------ // 下子 function down(tid,i,j){ if(status==1) return 0; if(tid.innerHTML!='') return 0; if(pcrt==p1){ tid.innerHTML='#'; pcrt=p2; } else{ tid.innerHTML='@'; pcrt=p1; } document.getElementById('msg').innerHTML='current:'+pcrt; //显示 pd(i,j,tid.innerHTML,pcrt);//执行判断 } // ------------------------------------------------------------------ // 判断 function pd(i,j,inner,pcrt){ if(checkx(i,j,inner)){ done(pcrt); } else if(checky(i,j,inner)){ done(pcrt); } else if(checko(i,j,inner)){ done(pcrt); } else if(checkp(i,j,inner)){ done(pcrt); } else return 0; } // ------------------------------------------------------------------ // 开始 function reset(){ status=0; document.getElementById('main').innerHTML=''; z='<div id="msg">current:player1 </div><table cellspacing=0 border=1>'; // ------------------------------------------------------------------ // 动态生成表格 for(ii=1;ii<14;ii++){ z=z+'<tr>'; for(jj=1;jj<14;jj++) z=z+'<td id="t'+ii+jj+'" onclick="down(this,'+ii+','+jj+')"></td>'; z=z+"</tr>"; } z=z+"</table>"; document.getElementById('main').innerHTML=z; } // ------------------------------------------------------------------ // 结束 function done(winner){ status=1; alert(winner+' win the game'); } // ------------------------------------------------------------------ // 获取表格内容 function value(ni,nj){ if(ni>0&&nj>0&&ni<13&&nj<13) return document.getElementById('t'+ni+nj).innerHTML; else return '!'; } // ------------------------------------------------------------------ // 判断x方向 function checkx(xi,xj,c){ if(value(xi+1,xj)==c&&value(xi+2,xj)==c&&value(xi+3,xj)==c&&value(xi+4,xj)==c) return 1; else if(value(xi+1,xj)==c&&value(xi+2,xj)==c&&value(xi+3,xj)==c&&value(xi-1,xj)==c) return 1; else if(value(xi+1,xj)==c&&value(xi+2,xj)==c&&value(xi-1,xj)==c&&value(xi-2,xj)==c) return 1; else if(value(xi+1,xj)==c&&value(xi-1,xj)==c&&value(xi-2,xj)==c&&value(xi-3,xj)==c) return 1; else if(value(xi-4,xj)==c&&value(xi-1,xj)==c&&value(xi-2,xj)==c&&value(xi-3,xj)==c) return 1; else return 0; } // ------------------------------------------------------------------ // 判断y方向 function checky(yi,yj,c){ if(value(yi,yj+1)==c&&value(yi,yj+2)==