消星星小游戏

实现界面上随机出现星星,点击就消失,街面上星星总数不超过20个就可以一直玩,有进行游戏的总时间

同时有进度条来可以感受到离结束的快慢。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>star</title>
    <style type="text/css">
        #d2{
            width: 100px;
            height: 20px;
            border:1px solid red;
            display: inline-block;
        }
        #d3{
            display: inline-block;
            background:yellow;
            height: 20px;
        }
    </style>
    <script type="text/javascript">
    // 点击星星让星消失 星星超过20个游戏就结束,有时间,有进度条
    // obj.οnclick=abcd(对象.事件=事件函数)
        // window.οnlοad=init;
        var dsq;
        var t=0
        var timedsq;

        function start(){
            window.clearInterval(timedsq);
            window.clearInterval(dsq);
            dsq=window.setInterval("star()",400)
            timedsq=window.setInterval("time()",1000);
            
        }
        function time(){
            t++;
            var obj=document.getElementById("d1");
            obj.innerHTML="youxi jin xing l "+t+"s";
        }
        function stop(){
            // window.clearInterval(dsq);
            alert("暂停游戏");

        }
        var count=0;
        function star() {
            var obj=document.createElement("img")
            obj.src="star.png";
            var w=Math.floor(Math.random()*80+20)
            obj.width=w;
            var x=Math.floor(Math.random()*1166+1000);
            var y=Math.floor(Math.random()*500+100);
            obj.style.position="absolute";
            obj.style.top=x+"px";
            obj.style.left=y+"px";//随机显示星星图片的宽度和出现在界面上的位置
            obj.οnclick=removestar;
            //添加节点
            document.body.appendChild(obj);
            count++;
            var spanwidth=document.getElementById("d3");
            spanwidth.style.width=count*5+"px";
            //解决游戏
            if(count>20){
                alert("游戏结束");
                window.clearInterval(dsq);
                location.reload();//实现超过20个游戏就结束游戏同时重启游戏界面
            }


        }//当前节点的父节点删除当前的子节点(只有父节点可以删除节点:使用this不用传递参数可以直接使用表示当前)用this来实现点击消失的星星是当前的星星
        function removestar(){
            this.parentNode.removeChild(this);
            count--;//解决不减的bug
             var spanwidth=document.getElementById("d3");
            spanwidth.style.width=count*5+"px";

        }
    </script>
</head>
<body>
    <input type="button" value="点击游戏" οnclick="start()">
    <input type="button" value="stopgame" οnclick="stop()">
     <span id="d1">youxi jin xing l <strong>0</strong>s</span>
     <span id="d2"><span id="d3"></span></span>
</body>
</html>

转载于:https://my.oschina.net/u/3772683/blog/1613225

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值