发表于: 2019-12-12 23:24:02

1 1226


今天完成的工作

今天完成的内容是事件页面的样式修改,在事件页面之前用的下拉样式是基于纯css实现的,但是基于css去完成的下拉在后续的使用当中出现了一点小问题,首先是我们在进入到这个页面的时候下拉内容部分是隐藏的需要我们手动开启,而后是每次跳转之后都需要手动将影藏的内容点击出来,第二个问题是。在js内控制下一天显示内容之后,再想使用下拉这种方式就没有办法操作了。而后就把css的这种样式做了删除,直接使用js来控制它的显示和下拉,这样之后下拉和显示之中变不在有冲突,这边要注意的一个点是之前在做这个js的判断时,对于点击事件内部的条件判断,点击事件包含了我们要点击的元素和我们下拉的内容框,所以才出现了点击下拉框的时候这个下拉菜单发生了隐藏起来的效果。而后改为了需要点击的部分加点击事件即解决了这个问题。

for(let i=0;i<9;i++){
        whichday[i].onclick=function(){
            ifdropdown[i].getElementsByClassName("day-content")[0].style.display=="none")
            {dropdown[i].getElementsByClassName("day-content")[0].style.display="block"}
            else{dropdown[i].getElementsByClassName("day-content")[0].style.display="none"}
        }   
}

解决的第二个问题是,关于我们如何结束游戏的问题。在我们这个游戏的逻辑中分为平民胜利和杀手胜利两个方式,平民胜利的条件是要将杀手全部杀死才能结束,而杀手胜利的条件是当我们的平民和杀手人数相同时杀手即取得胜利。在这个问题上我采取的方式是让循环死亡状态的数组里的内容,根据死亡状态数组的内容,判断身份数组中当前索引的身份是什么,若是平民,那么我们之前存储在本地的平民人数-1,若是杀手那么我们存储在本地的杀手人数-1。然后每次页面刷新后这个值也就会随我们投票发生的变化而变化最终产生判断的条件,当我们平民和杀手人数一样多时,杀手胜利。当我们的杀手人数为0时平民则取得胜利

var o=0;
var syrs=localStorage.getItem("ckrs")
var pmsw=localStorage.getItem("pmrs")
//杀死的杀手人数
for(let i=0;i<everyday.length;i++)
{
    if(sf[everyday[i]-1]=="杀手"){
    o++;
    syrs=syrs-1
    }
    if(sf[everyday[i]-1]=="平民"){
    pmsw=pmsw-1
    }
}
//平民胜利
if(o==localStorage.getItem("ckrs")){
    window.location.href=("task7c.html")
}
console.log(o)
console.log(syrs)
console.log(pmsw)
//杀手胜利
if(syrs==pmsw){
    window.location.href=("task7c.html")
}

明天要完成的任务

明天要做的是修改我们的游戏结果页面当我们的游戏结果出现后。显示第几天白天和晚上死亡的状态,以及游戏结束后最后剩下的多少人什么身份,另一个就是在任务二中的限定输入3-18的正则要去写,还有通过滑轮控制我们的人数显示。


返回列表 返回列表
评论

    分享到