发表于: 2017-03-18 01:28:10

2 1406


今天完成的事情:任务二,还有些地方没想明白,借日报顺着理一下思路吧。


明天计划的事情:任务二剩下的功能实现,储备一点jquery知识,理一下目前掌握的原生知识。


遇到的问题:

1.任务二在完成大部分静态页面之后,JS部分首先想到的是关联输入框,滑块,以及+-按钮的输出值,使三者相互统一。

rangeNum.onchange = function rangeChange() {
//滑块值改变的时候,触发函数
   inputNum.value = rangeNum.value;
   //滑块输出数值赋予给输入框
};

这里用到了一个属性 onchange, 事件会在域的内容改变时触发事件,将她的值赋予给输入框的值,既可以达到两者相关联。

+-按钮则设置onclock属性(点击后触发),在点击后,input的数值+1要注意是input的value(要注意是input的value),要注意input的值不能大于18,如果大于要用那个alert弹出警告。

add.onclick = function addChange() {
//点击+号时range和input值一起增加
   inputNum.value++;
   if (inputNum.value > 18) {
alert("请输入正确的玩家数量");
       inputNum.value = 18;
   } else {
rangeNum.value = inputNum.value;
   }
};

最后给input框在正则表达式已经限定只能输入两位以下数字的前提下添加范围。

下一步就是给点击设置按钮添加随机生成身份的功能了,这步分还有些没有完善,问题有:

在判断input输入值从而生成杀手人数的情况下,掌握了if的写法,想用switch表达:

switch (inputNum.value){
//根据玩家人数设置杀手数
   case 6:
case 7:
case 8:
killer.length = 1;
       break;
   case 9:
case 10:
case 11:
killer.length = 2;
       break;
   case 12:
case 13:
case 14:
case 15:
killer.length = 3;
       break;
   case 16:
case 17:
case 18:
killer.length = 8;
       break;
}

并不能返回正确的killer.length值。

收获:

掌握了很多新的属性来处理不同的情况:

1. concat() 链接两个字符串,再生成杀手字符串和平民字符串后用这个连接。

2.sort()可以对数组的元素进行排序,而排序的参数则需要通过

function randomSort(a, b) {
return Math.random() > .5 ? -1 : 1;
}

来取得乱序随机数,这是获取乱序随机数最简便的方法。

3.

innerHTML设置或返回表格行的开始和结束标签之间的 HTML,本任务中输出的身份设置结果可以通过此方法输出显示,但是实现方法还没弄太懂。



返回列表 返回列表
评论

    分享到