开心数独游戏
JavaScript写的开心数独游戏,玩了几次,找到了一些诀窍,不到一分钟就能破题了,后来就用js写出来,仓促之中难免bug百出,祝您也能破题。
JavaScript写的开心数独游戏,玩了几次,找到了一些诀窍,不到一分钟就能破题了,后来就用js写出来,仓促之中难免bug百出,祝您也能破题。
答案:<!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">
<!--
* {margin:0px;padding:0px;}ul {list-style-type:none;}#gong {width:189px;text-align:center;border-bottom-width:1px;border-left-width:1px;border-bottom-style:solid;border-left-style:solid;border-bottom-color:#333;border-left-color:#333;height:189px;margin:auto;}#gong li {height:20px;width:20px;overflow:hidden;font-size:12px;line-height:20px;float:left;border-top-width:1px;border-right-width:1px;border-top-style:solid;border-right-style:solid;border-top-color:#333;border-right-color:#333;font-weight:bold;background-color:#E8E8E8;color:#009900;cursor:default;}#gong li input {border-top-style:none;border-right-style:none;border-bottom-style:none;border-left-style:none;width:100%;text-align:center;height:20px;color:#0033FF;border-top-width:0px;border-right-width:0px;border-bottom-width:0px;border-left-width:0px;}#gong li.err,#gong li.err input {background-color:#FF0000;}
-->
</style>
<script language="javascript">
var classNum = [1,2,3,4,5,6,7,8,9];
var classArr = new Array();
function game(nan){
classNum.sort(function(){ return Math.random()>0.5?-1:1; });//打乱数字;
for(i=0;i<9;i+=3){
classArr[i/3] = classNum.slice(i,i+3);
}
var S = new Array();
S[0] = new Array();
for(i=0;i<3;i++){
classArr.unshift(classArr.pop());
S[0][i]=new Array();
S[0][i]=classArr.slice(0,4);
}
for(i=1;i<3;i++){
S[i] = new Array();
for(m=0;m<3;m++){
S[i][m] = new Array();
for(n=0;n<3;n++){
var _arr = S[i-1][m][n].slice(0,4);
_arr.unshift(_arr.pop());
S[i][m][n] = _arr;
}
}
}
var c = S.toString().replace(/(\d),/g,function(){
var e=arguments[1];
e = Math.random()>nan?e:'<input type="text" rel='+e+' maxlength="1" />';
return e+"</li><li>";
});
ul.innerHTML="";
ul.innerHTML="<li>"+c+"</li>";
}
function check(){
var lis = ul.getElementsByTagName('li');
var i=0,li,err=false;
while(li=lis[i]){
li = li.firstChild;
if(err)return;
if(li.nodeType!=3){
var value = li.value;
if(value=='' || value == ' '){alert('未填写完整,失败!\n重来!');Reset();return;}
if(parseInt(value)!=parseInt(li.getAttribute('rel'))){
var heng = parseInt(i/9);
for(j=heng*9;j<(heng+1)*9;j++){
var tli = lis[j].nodeType==3?lis[j].innerHTML:lis[j].firstChild.value;
tli = parseInt(tli);
if(parseInt(value)==tli && i!=j){
li.parentNode.className = 'err';
lis[j].className = 'err';
err = true;
}
}
for(j=i%9;j<81;j+=9){
var tli = lis[j].nodeType==3?lis[j].innerHTML:lis[j].firstChild.value;
tli = parseInt(tli);
if(parseInt(value)==tli && i!=j){
li.parentNode.className = 'err';
lis[j].className = 'err';
err = true;
}
}
if(err){alert('出错了,失败!\n重新开始!');Reset();return;}
}
}
i++;
}
alert('恭喜,满意100分!\n继续!');
Reset();
}
function daan(){
var lis = ul.getElementsByTagName('input');
var i=0,li;
while(li=lis[i]){
li.value=li.getAttribute('rel');
i++;
}
}
function Reset(){
var nan=document.getElementById('nan');
game(Number(nan.options[nan.selectedIndex].value));
}
var div,ul;
window.onload=function (){
div=document.createElement("div");
div.setAttribute("id","gong");
ul = document.createElement("ul");
div.appendChild(ul);
document.getElementById('d').appendChild(div);
game(0.65);
}
</script>
</head>
<body>
<table width="200" border="0" cellspacing="0" cellpadding="0" style="margin:auto;margin-top:20px;">
<tr>
<td><div id="d"></div></td>
</tr>
<tr>
<td height="30" align="center"><select id="nan">
<option value="0.45">简单</option>
<option value="0.65" selected="selected">中等</option>
<option value="0.75">难</option>
</select><input type="submit" name="Submit" value="重来" onclick="Reset()" /><input type="submit" name="Submit22" value="答案" onclick="daan()" /><input type="submit" name="Submit2" value="交卷" onclick="if(confirm('确定都填对了吗?\n交卷后不可以更改哦\n确定吗?'))check()" /></td>
</tr>
</table>
</body>
</html>
上一个:生成N个随机数的JS代码
下一个:俄罗斯方块JS游戏——黄文权