发表于: 2017-04-26 23:34:59

2 1104




今天完成的事情:找了一天的小毛病,昨天虽然大体的逻辑成型了,但是存在很多小bug,这些看起来不起眼的小


问题往往要话费我很多的时间去琢磨;本来计划把游戏结束做完的,看来计划还真是没有变化快啊,总有些意想不到的“小惊喜”!在杀手杀人和投票流程框下面添加数据花了一下午的时间:


for (var j = 0; j < deaths.length; j++) {
if (player[deaths[j]-1].status == 'killed') {
play = deaths[j] + '号被杀手杀死了,其真实身份是' + player[j].identity.role + '<br>';
       $('#vote').html(play);
       $("#vote").removeAttr("id");
   }
else if (player[deaths[j]-1].status == 'voted') {
play = deaths[j] + '号被投票投死了,其真实身份是' + player[j].identity.role + '<br>';
       $('#enen').html(play);
       $("#enen").removeAttr("id");
   }
}


写了一个for循环,上个页面设置了两种死亡状态:


player[this.index].status = "killed"//设置killed是被杀手杀死的
player[this.index].status = "voted";//设置voted是被投票投死的


当玩家是被杀手杀死的时候在id为vote我元素上添加玩家死活状态,当玩家是被投票投死的时候在id为enen我元


素上添加玩家死活状态;重点是 $("#vote").removeAttr("id");这个removeAttr() 方法从被选元素中移除属性,因


为id是不可重复使用的,之前没有移除id导致添加的html都在第一天;


明天计划做的事;尽力把游戏完善吧,感觉自己做起来有一点吃力,暂且不做太大的计划了;


遇到的问题:投票页面存储数据的时候出现问题了,每次杀完人了到第二天的会显示人没死,原来是我吧数据存在


动态改变玩家状态的for循环里面了,



把这里删掉存在投票按钮的onclick时间里面就解决了


function gonext() {
if (killPeople ==undefined){//没有选择被杀的对象
       alert("还没投票呢?")
}else {
sessionStorage.death=diedNum;//在上面存数据,会导致还没杀人,死亡玩家的数据叠加。
       console.log(diedNum);
       alloplayer = JSON.stringify(player);
       sessionStorage.oplayer = alloplayer;//所有玩家的状态,存到oStatus里面。
       window.location.href="task4-2-2.html";
       day++;
       sessionStorage.day = day;

   }
}


还有一些小问题如果都写下来估计要写到明早了,忒tm的多了!


收获:removeAttr() 方法从被选元素中移除属性;本地数据储存的位置,不能随便存;不细心自己遭罪啊!




返回列表 返回列表
评论

    分享到