究极简单版打地鼠游戏-JQ实现

简化版打地鼠游戏-JQ实现

其实就是打黑块。
有倒计时和计分功能。

<!DOCTYPE html>
<html>
<head>
	<title>打黑块</title>
	<meta charset="UTF-8">
	<style type="text/css" media="screen">
		.main{			 
			margin:20px auto ;
			width: 320px;
			
		}
		.main-foot{			 
			margin:20px auto ;
			width: 320px;
			height: 320px;
			background: #757575;
		}
		.ds{
			margin-left: 5px;
			margin-top: 5px;
			width: 100px;
			height: 100px;
			background: white;
			float: left;
		}
		.ds:hover{
			background:#D3D3D3; 
		}
		.black{
			background:#C0C0C0;
		}
	</style>
</head>

<script src="./JQ/jquery-3.2.1.js"></script>
<body>

	<div id="main" class="main">		
		<font>分数:</font><font id="fraction"></font>
		<br>
		<font>倒计时:</font> <span id="second_show"></span>
		<br>
		<br>
		<button id="start">开始</button>
		<br>
		<div id="main-foot" class="main-foot">
			<div class="ds" id="ds_1"></div>
			<div class="ds" id="ds_2"></div>
			<div class="ds" id="ds_3"></div>
			<div class="ds" id="ds_4"></div>
			<div class="ds" id="ds_5"></div>
			<div class="ds" id="ds_6"></div>
			<div class="ds" id="ds_7"></div>
			<div class="ds" id="ds_8"></div>
			<div class="ds" id="ds_9"></div>
		</div>	
	</div>

	<script type="text/javascript">
		var flag=0;//标记游戏是否已经开始,0未开始
 		var fraction=0;//分数

		$("#start").click(function(){	//倒计时函数
			if(flag==1){
				alert('游戏已经开始');
			}else{
				flag=1;
				var intDiff = parseInt(30);//倒计时总秒数量
				var timeID;			
			  timeID = window.setInterval(function(){//开始计时器
			    var second=0;//时间默认值
			    if(intDiff > 0){					   
			      second = Math.floor(intDiff);
					   //每秒生成随机黑块							
					    $("[id^='ds_']").removeClass('black');
					    var rand = parseInt(Math.random() * 9 + 1);  //生成随机数1-9
					    //console.log(rand);
					    var div_id="ds_"+rand;
					    $('#'+div_id).addClass("black");	
			    }else{
					   //游戏结束
					   flag=0;  //倒计时结束,标识符变为0
					   fraction=0; //总分归零
			      window.clearInterval(timeID);//停止计时器
			    }
			    $('#second_show').html('<s></s>'+second+'秒');
			    intDiff--;
			  }, 1000);
			}
		});	

		$("div[id^='ds_']").on('click', function(e) {                
		  if ($(this).hasClass("black")) {
				$(this).removeClass("black")
				fraction++;
				$('#fraction').text(fraction);
		   } 
		});
	</script>
</body>
</html>

主要就是2个部分。第一个,点击开始,倒计时30秒开始,然后每秒修改框中的类,即生成地鼠,刷去没被打的地鼠。第二个,框中的9个div,如果他们有black类,则移除black类,加1分。
效果图
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值