发表于: 2017-04-05 21:08:08
1 585
今天完成的任务
1.任务二95%
明天的计划
1.完成任务二,
2.任务三页面
遇到的问题
1.对于任务二我的想法
a.从input获得值 想要获得实时的数值。
一开始只是做了onchange,首先把总人数input的值提取出来
function playernum() {
return document.getElementById('player').value;
}
想直接放在onchange的函数里面,发现这个在每输入一个数字的时候都会判断,很不好,找到了失去焦点这个属性
//onchange的函数
function check() {
player.onblur= function test()
在失去焦点的时候,才会运行onchange里面的函数。
b.判断
我想做的判断是先判断是不是数字
如果不是数字,就弹窗请输入数字
如果是数字,看是否在范围内,如果不在范围内,弹窗提示
看了下关于正则式的东西,选择用.test()
player.onblur= function test() {
if (/^[0-9]*$/.test(playernum())) {
if (playernum()>2 && playernum()<19) {
killerNum();
}
else {
alert('请输入3-18之间的数字');
}
}
else {
alert('请输入数字');
}
}
b.根据数字来分配杀手和平民的人数,然后添加到那两个input内
这个我的想法是单纯用三个判断就好了
function killerNum() {
if (playernum()>8 && playernum()<12) {
killer=2;
} else if (playernum()>11 && playernum()<16){
killer=3;
} else if (playernum()>16){
killer=4;
} else {
killer=1;
}
var peopleNum = playernum()-killer;
document.getElementById('killer').value=killer;
document.getElementById('people').value=peopleNum;
}
收获
评论