开关灯游戏的大体的思路分为三部分:1、创建格子 ;2、开关函数 ;3、判断上下左右的函数
一、创建格子的时候呢我们其实可以吧变量定义成全局变量,这样再后期修改的时候只修改变量值,而不用在代码里面找来找去,比如:border、width、height、row(行数)、col(列数)、margin等,然后呢在for循环里面创建div,比如:for(var i=0;i<col*row;i++){ var chunk=document.createelement('div')};
把这些div放进一个数组里面--便于寻找下标,然后让进大的div中,这个大的div的宽度用变量去计算,main.style.width=col*width+col*border*2+col*margin+'px'; 这样就不用担心宽度大小的问题了
二、在开关函数这里呢,我们首先在for循环里面定义开关flag=false,默认他为关闭的,然后再function中添加if语句判断,如:if(a.flag==false){a.style.background='red';a.flag=true}else{a.style.background='black';a.flag=true;}这里的a是传进来的参数。
三、判断上下左右函数,首先在函数里面开始调用开关函数,传参数为this,然后添加if语句进行判断,首先判断上面的方块,因为在第一行上面是没有的 ,所以只能在第二行点击,上面的小块亮,在这判断this.index>=10的时候,在开关函数onlight()中写入arr[this.index-10],同理,下面的方块就是this.index<=90的时候,arr[this.index+10],左右的小块对10取余,!=0是减去1是左边的,!=9则加上1为右面的,这样简单的开关灯游戏就完成了。
结语:如果想添加点难度,我们可以在添加一个关卡按钮,绑定一个点击函数,在点击函数里面添加随机数Math.random()让它随机产生亮的块,以此增加游戏者难度,同时熟悉随机数的运用。
网友评论