<!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=utf-8" />
<title>打地鼠</title>
<style type="text/css">
<!--设置光标的图片路径为'images/mouse.ani'-->
img{cursor:url('images/mouse.ani');}
</style>
<script language="JavaScript">
// 定义定时执行程序的变量
var no1,no2,no3,no4;
// 声明游戏时间变量、地鼠出现的时间间隔、停留时间变量
var gameTime,spaceTime,stayTime;
// 声明开始按钮、结束按钮
var button1,button2;
// 声明倒计时间变量
var time;
// 声明地鼠总个数
var sum=0;
// 声明打中了的变量
var mouse=0;
// 开始游戏,执行init方法并设置 每隔1秒钟执行showTime和showImage方法
function onGame(){
init();
no1=window.setInterval("showTime()",1000);
no2=setInterval("showImage()",1000);
}
// 在输入框输入值后的初始化方法,主要是设置各个输入框和按钮的禁用和不禁用
function init(){
// 得到id为gameTime的引用
gameTime=document.getElementById("gameTime");
// 得到id为spaceTime的引用
spaceTime=document.getElementById("spaceTime");
// 得到id为stayTime的引用
stayTime=document.getElementById("stayTime");
// 禁用gametime输入框
gameTime.disabled=true;
// 禁用spaceTime输入框
spaceTime.disabled=true;
// 禁用stayTime输入框
stayTime.disabled=true;
// 得到id为button1的引用
button1=document.getElementById("button1");
// 得到id为button1的引用
button2=document.getElementById("button2");
// 禁用button1按钮
button1.disabled=true;
// 不禁用button2按钮
button2.disabled=false;
// 把输入的游戏时间转换为整数后赋值给倒计时
time=parseInt(gameTime.value)*60;
// 设置地鼠总数变量为0
sum=0;
// 打中的地鼠个数为0
mouse=0;
}
// 倒计时自减1,如果小于0就调用esc方法关闭游戏,
function showTime(){
// 获得倒计时时间,并输出显示
document.getElementById("time").innerHTML=time;
time-=1;
if(time<=0){
esc();
}
// 输出得分情况
var str="打中:"+mouse+"只 漏掉:"+(sum-mouse)+"只"+"<br>"+" 总分:"+sum*100+" 得分:"+(mouse*100-(sum-mouse)*100);
// 获得得分,并输出显示
document.getElementById("score").innerHTML=str;
}
//+-----------------------------------------------
//| images/00.jpg为原始背景图片、images/01.jpg为地鼠图片、images/02.jpg为击中地鼠图片
//+-----------------------------------------------
// 随机把某个单元格的背景图片更换为地鼠图片
function showImage(){
// 获得名字为image的图像集合
var images=document.getElementsByName("image");
// 获得随机数并转型为整数,赋值给index
var index=Math.floor(Math.random()*25);
// 将得到的随机整数当做图像集合的下标得到对应的图像,并且赋给它新的图片路径,更改图片为地鼠
images[index].src="images/01.jpg";
// 每更改图片为地鼠图片1次,地鼠总数自增1个
sum+=1;
// 把获得的随机整数和页面输入的停留时间当做参数写入stopImage()方法,再当做参数放入定时执行程序的settime()方法,最后赋值给no3变量
no3=setTimeout("stopImage("+index+")",parseInt(stayTime.value)*1000);
}
// 把打中地鼠的图片更换为原始背景图片,参数为产生的随机整数
function stopImage(index){
document.images[index].src="images/00.jpg";
}
// 当鼠标点击结束后,把打击的地鼠或击中的地鼠图片更换为原始的背景图片
function leaveImage(o){
o.src="images/00.jpg";
}
// 当击中地鼠时,为防止击中的图片错误,所以先截取到的打击地鼠的图片名是否等于"01.jpg",如果是就赋值给它一个新的路径images/02.jpg(击中地鼠的图片),同时击中地鼠的次数mouse加1,最后每过0.5秒再把路径改为"images/00.jpg",更改为原始的背景图片;
function clickMouse(o){
// 截取
var str=o.src.substr(o.src.length-6,6);
if(str=="01.jpg"){
o.src="images/02.jpg";
mouse+=1;
no4=setInterval("leaveImage(o)",500);
}
}
// 关闭游戏
function esc(){
// 关闭no1计时器
window.clearInterval(no1);
window.clearInterval(no2);
window.clearTimeout(no3);
window.clearInterval(no4);
// 不禁用gameTime输入框
gameTime.disabled=false;
spaceTime.disabled=false;
stayTime.disabled=false;
// 不禁用button1按钮
button1.disabled=false;
// 获得name为image的图像集合
var images=document.getElementsByName("image");
// 遍历赋值所有的图片路径为:"images/00.jpg",更改为原始的背景图片
for(var i=0;i<images.length;i++){
images[i].src="images/00.jpg";
}
}
</script>
</head>
<!---->
<!--设置背景图片-->
<body background="images/bg.jpg" >
<!--设置背景音乐-->
<bgsound src="images/bgsound.mp3" loop="-1">
<!--设置表位置居中-->
<table align="center">
<tr>
<td><font color="#0066FF">游戏说明:</font></td>
</tr>
<tr>
<td>
<font color="#0066FF">点击“开始游戏”按钮,在下图中随机产生老鼠,老鼠消失前单击老鼠进行击打,<br>打中一次即可获得100的积分,没有打中老鼠,扣取100积分。快快行动吧,考验您的<br>反应和眼力!</font>
</td>
</tr>
<!--设置改行靠右对齐-->
<tr align="right">
<td><font color="#0066FF">作者:xxx<br></font></td>
</tr>
</table>
<br />
<br />
<!--设置该表居中对齐,单元格间距为5-->
<table align="center" cellspacing="5">
<tr>
<td>
<!--设置单元格间距为3-->
<table cellspacing="3">
<tr>
<td>--游戏时间:--</td>
<!--设置该输入框类型为文本类型,宽度为6px,id为gameTime,默认值为1分钟-->
<td><input type="text" width="6" id="gameTime" value="1"/> 分钟</td>
</tr>
<tr>
<td>--倒计时间:--</td>
<td><div id="time"></div></td>
</tr>
<tr>
<td>--地鼠出现间隔:--</td>
<td><input type="text" width="6" id="spaceTime" value="1"/> 秒钟</td>
</tr>
<tr>
<td>--停留时间:--</td>
<td><input type="text" width="6" id="stayTime" value="1"/> 秒钟</td>
</tr>
<tr>
<td>--得分情况:--</td>
<td><div id="score"></div></td>
</tr>
<!--设置改行位置居中-->
<tr align="center">
<!--设置该单元格类型为button,id为button1,单击的调用的是开始游戏方法onGame-->
<td ><input type="button" value="开始游戏" id="button1" onclick="onGame()"/></td>
<!--设置该单元格类型为button,id为button2,单击的调用的是结束游戏方法esc-->
<td><input type="button" value="退出游戏" id="button2" disabled onclick="esc()"/></td>
</tr>
</table>
</td>
<td>
<!--设置该表边框宽度为1,单元格间距为3,背景颜色为白色-->
<table border="1" cellspacing="3" bgcolor="white">
<tr>
<!--设置单元格中的内容为一张图片-->
<td><img src="images/00.jpg" name="image" onclick="clickMouse(this)"/></td>
<td><img src="images/00.jpg" name="image" onclick="clickMouse(this)"/></td>
<td><img src="images/00.jpg" name="image" onclick="clickMouse(this)"/></td>
<td><img src="images/00.jpg" name="image" onclick="clickMouse(this)"/></td>
<td><img src="images/00.jpg" name="image" onclick="clickMouse(this)"/></td>
</tr>
<tr>
<td><img src="images/00.jpg" name="image" onclick="clickMouse(this)"/></td>
<td><img src="images/00.jpg" name="image" onclick="clickMouse(this)"/></td>
<td><img src="images/00.jpg" name="image" onclick="clickMouse(this)"/></td>
<td><img src="images/00.jpg" name="image" onclick="clickMouse(this)"/></td>
<td><img src="images/00.jpg" name="image" onclick="clickMouse(this)"/></td>
</tr>
<tr>
<td><img src="images/00.jpg" name="image" onclick="clickMouse(this)"/></td>
<td><img src="images/00.jpg" name="image" onclick="clickMouse(this)"/></td>
<td><img src="images/00.jpg" name="image" onclick="clickMouse(this)"/></td>
<td><img src="images/00.jpg" name="image" onclick="clickMouse(this)"/></td>
<td><img src="images/00.jpg" name="image" onclick="clickMouse(this)"/></td>
</tr>
<tr>
<td><img src="images/00.jpg" name="image" onclick="clickMouse(this)"/></td>
<td><img src="images/00.jpg" name="image" onclick="clickMouse(this)"/></td>
<td><img src="images/00.jpg" name="image" onclick="clickMouse(this)"/></td>
<td><img src="images/00.jpg" name="image" onclick="clickMouse(this)"/></td>
<td><img src="images/00.jpg" name="image" onclick="clickMouse(this)"/></td>
</tr>
<tr>
<td><img src="images/00.jpg" name="image" onclick="clickMouse(this)"/></td>
<td><img src="images/00.jpg" name="image" onclick="clickMouse(this)"/></td>
<td><img src="images/00.jpg" name="image" onclick="clickMouse(this)"/></td>
<td><img src="images/00.jpg" name="image" onclick="clickMouse(this)"/></td>
<td><img src="images/00.jpg" name="image" onclick="clickMouse(this)"/></td>
</tr>
</table>
</td>
</tr>
</table>
</body>
</html>
03-31