📄 完整的游戏实现_震动弹出窗口.htm
字号:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>华容道模拟游戏</title>
<script language="javascript">
<!--
var bgc="#ff00ff";
function bg(c){
bgc='#'+c;
}
var level=8;
function dset(x){
level=x;
}
function game(){
var width=260;
var height=260;
var xposition = (screen.width - width) / 2;
var yposition = (screen.height - height) / 2;
var theproperty= "width=" + width + "," + "height=" + height + ","
+ "screenx=" + xposition + "," //仅适用于Netscape
+ "screeny=" + yposition + "," //仅适用于Netscape
+ "left=" + xposition + "," //IE
+ "top=" + yposition+"," //IE
+'toolbar=no, menubar=no, scrollbars=no,location=no, status=no,'
+' toolbar=0, menubar=0, scrollbars=0,location=0, status=0 ';
m_zhen="function boom(n) {"+"\n"+
" if (window.top.moveBy) {"+"\n"+
" for (i = 20; i > 0; i--) {"+"\n"+
" for (j = n; j > 0; j--) {"+"\n"+
" window.top.moveBy(0,i);"+"\n"+
" window.top.moveBy(i,0);"+"\n"+
" window.top.moveBy(0,-i);"+"\n"+
" window.top.moveBy(-i,0);"+"\n"+
" } "+"\n"+
" }"+"\n"+
" }" +"\n"+
"}"+"\n"
d_game='<html><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312">'
+'\n<title>华容道模拟游戏</title><script>'
+m_zhen
+'\nvar level='+level+';'
+'\nvar figs=new Array(49);//存放按钮的显示数字'
+'\nvar fg=false; //游戏是否已经开始'
+'\nfunction deal(){'
+'\nfg=true;'
+'\ndocument.forms[0].elements[h_ind].style.visibility="visible";'
+'\ndocument.forms[0].elements[level].style.visibility="hidden";'
+'\nh_ind=level;'
+'\nfor(i=0;i<level;i++){'
+'\nfigs[i]=Math.floor(Math.random() * level)+1;'
+'\nfor(j=0;j<i;j++)'
+'\nif(figs[i]==figs[j])'
+'\n {i--; break;}'
+'\n}'
+'\nfor(i=0;i<level;i++){'
+'\nif(figs[i]<10) figs[i]=" "+figs[i]+" ";'
+'\nelse figs[i]=" "+figs[i];'
+'\ndocument.forms[0].elements[i].value=figs[i];}'
+'\n}'
+'\nvar h_ind=level;'
+'\nfunction move(ind){'
+'\nvar slevel=Math.sqrt(level+1);'
+'\nvar right=((h_ind+1)%slevel==0)&&(ind==(h_ind-1)||ind==(h_ind-slevel)||ind==(h_ind+slevel));'
+'\nvar left=(h_ind%slevel==0)&&(ind==(h_ind+1)||ind==(h_ind-slevel)||ind==(h_ind+slevel));'
+'\nvar middle=h_ind%slevel!=0&&(h_ind+1)%slevel!=0&&(ind==(h_ind-1)||ind==(h_ind+1)||ind==(h_ind-slevel)||ind==(h_ind+slevel));'
+'\nif(right||left||middle){'
+'\nwith(document.forms[0].elements[h_ind])'
+'\n { value=document.forms[0].elements[ind].value;'
+'\n style.visibility="visible"; }'
+'\ndocument.forms[0].elements[ind].style.visibility="hidden";'
+'\nh_ind=ind;}'
+'\n}'
+'\nfunction suc(){'
+'\nfor(i=1;i<level+1;i++)'
+'\nif(document.forms[0].elements[i-1].value!=i)'
+'\n{alert("游戏还没完成!!");break;}'
+'\nif(i==level+1)'
+'\nalert("成功了!好样的!");'
+'\n}'
+'\nfunction redo(){'
+'\ndocument.forms[0].elements[h_ind].style.visibility="visible";'
+'\nfor(i=0;i<level;i++)'
+'\ndocument.forms[0].elements[i].value=figs[i];'
+'\ndocument.forms[0].elements[level].style.visibility="hidden";'
+'\nh_ind=level;'
+'\n}'
+'\ndocument.bgColor="'+bgc+'";'
+'\n</script'+'></head'+'><body onLoad="boom(4);">'
+'\n<form name="form1"><p>';
var lev=Math.sqrt(level+1);
for(row=0;row<lev;row++)
{for(col=0;col<lev;col++)
{var loc=row*lev+col;
vloc=loc+1;
if(vloc<10) vloc=" "+vloc+" ";
//else vloc=" "+vloc;
else vloc=vloc;
if(loc==lev*lev-1)
d_game+='<input type="button" value="'+vloc+'" style="visibility:hidden" onClick="move('
+(lev*lev-1).toString()
+');"></p>';
else
d_game+='<input type="button" value="'+vloc+'" onClick="move('+loc+');">';
}
d_game+='<br>';}
d_game=d_game+'\n<p><input type="button" value=" 开始 " onClick="deal();"><br>'
+'\n<input type="button" value=" 完成 " onClick="suc();"><br>'
+'\n<input type="button" value=" 重玩 " onClick="redo();"></p>'
+'\n</form'+'></body'+'></html'+'>';
gamew=open( "","newwindow",theproperty);
gamew.document.write(d_game);
gamew.document.close();
gamew.focus();
}
-->
</script>
</head>
<body>
<div align="center"><center>
<h1>华容道模拟游戏</h1>
<table width="70%">
<tr>
<td>操作帮助:<p>1.设置游戏。首先,请设置难度,然后单击"确定"按钮。这时将弹出游戏窗口。<br>
2.在"游戏"窗口单击"开始"按钮,游戏将开始。单击空白附近的按钮,可以将该按钮移动到空白处。游戏的最终目的是将游戏恢复到最初状态,各按钮上的显示数字从1开始有序排列。<br>
3.游戏完成后,请单击"确定"按钮,系统将给出评分。<br>
4.可随时单击"重玩"按钮,重新开始同一局游戏。</p>
<hr>
</td>
</tr>
<tr>
<td>
<form>
<h2>游戏设置</h2>
<p>难度设置(单击相应的单选按钮)</p>
<p><input type="radio" name="R1" onClick="dset(24);">大师级(5×5)<input
type="radio" name="R1" onClick="dset(15);">高人级(4×4)<input
type="radio" name="R1" onClick="dset(8);" checked>普通级(3×3)</p>
<p>背景色设置(单击色块内的单选按钮)</p>
<table border="0" width="90%">
<tr>
<td width="20%" height="15" bgcolor="#00FFFF">
<input type="radio" name="R2" onClick="bg('00ffff');">
</td>
<td width="20%" height="15" bgcolor="#44bbFF">
<input type="radio" name="R2" onClick="bg('44bbff');">
</td>
<td width="20%" height="15" bgcolor="#8888FF">
<input type="radio" name="R2" onClick="bg('8888ff');">
</td>
<td width="20%" height="15" bgcolor="#bb44FF">
<input type="radio" name="R2" onClick="bg('bb44ff');">
</td>
<td width="20%" height="15" bgcolor="#ff00FF">
<input type="radio" name="R2" onClick="bg('ff00ff');" checked>
</td>
</tr></table>
<p><input type="button" value="确定" name="B1" onClick="game();"></p>
</form>
</td>
</tr>
</table>
</center></div>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -