发表于: 2019-03-14 21:31:05
1 809
今天完成的事情:
1、今天写了一天的代码,本来想通过自己来写,能有所提高,可是最后却出现了一堆bug,看来还要更加仔细用心才行啊。
以下是今天所写的js代码:
var people,line,str="";
//输入框滑块之间改变
function changeOne() {
people=document.getElementById('people');
line=document.getElementById('Slider');
line.value=people.value;
}
function changeTwo() {
people=document.getElementById('people');
line=document.getElementById('Slider');
people.value=line.value;
}
//点击减少人数
function minus() {
line=document.getElementById('Slider').value;
if (line==4){
return false;
} else {
line--;
}
document.getElementById('Slider').value=line;
document.getElementById('people').value=line;
}
//点击增加人数
function add() {
line=document.getElementById('Slider').value;
if (line==18){
return false;
}else {
line++;
}
document.getElementById('Slider').value=line;
document.getElementById('people').value=line;
}
//输入框
function over() {
people=document.getElementById('people').value;
if (people<=18){
alert("请输入4-18个人数");
}else if (people>=4){
alert("请输入4-18个人数");
}
}
//人数分配
function setting() {
people=document.getElementById('people');
var myPeople=parseInt(people.value);
var oUl=document.getElementById('oUl');
var oLi=oUl.getElementsByTagName('li');
str="";
var TotalArr=new Array();
var Killer=Math.floor(myPeople/3);
var number=new Array();
//遍历所有为平民
for (var n = 0; n < myPeople; n++) {
TotalArr[n]="平民";
}
//抽取杀手
for (var j = 0; j < killer; j++) {
number[j]=Math.floor(Math.random()*myPeople);
TotalArr[number[j]]="杀手";
//去重
}
//判断显示结果
for (var i = 0; i <myPeople; i++) {
if (TotalArr[i]=="杀手") {
str+='<li>'+'<div class="color-killer">'+'</div>'+'<p>'+(i+1)+'号'+TotalArr[i]+'</p>'+'</li>';
}else{
ste+='<li>'+'<div class="color">'+'</div>'+'<p>'+(i+1)+'号'+TotalArr[i]+'</p>'+'</li>>';
}
oUl.innerHTML=str;
arr=JSON.stringify(TotalArr);
sessionStorage.players=arr;
}
}
window.onload=function () {
document.getElementById("next").onclick=function () {
if (str==''){
alert("请分配身份");
}else {
location.href="js2-3.html";
}
}
}
indow.onload=reset;
document.getElementById("search").onclick=function btnClick() {
//判断人数到达设定值!
if (btnNum==2*players.length-1) {
document.getElementById("search").onclick=location.href="js2.4.html";
alert("法官查看")
//判断为偶数时!
}else if (btnNum%2==0){
//显示角色图片
for (var i = 0; i < hid2.length; i++) {
hid2[i].style.display="block";
}
//隐藏翻牌图片
hid1[0].style.display="none";
//修改角色内容
}
}
此处代码是为了实现滑块与按钮间的关联,把people的值赋给line,把line的值赋给people,从而实现双方的关联。
此处代码是为了实现玩家人数,最大人数<=18,最小人数>=4,这样就把人数控制在4-18人之内了。
此处代码是为了实现当最后一名玩家的身份知晓之后,直接跳转到下一个页面,从而正式开始游戏。
明天计划的事情:
1、首先明天要把今天的所有bug改过来,然后吸取教训继续写代码。
2、找准写代码的方式,不能盲目的写,要整理好思路,理解每一行代码的意思和用途。
遇到的问题:
1、今天有些急于写代码,还没有完全整理好自己的思路,所以最后出现了很多错误,以此为戒,需要改正。
收获:
1、首先今天自己动手写了很多代码,虽然出现了不少错误,但是至少克服了不敢写代码这一关吧,接下来就是认真了。以后每次写代码之前最重要的就是一定要整理好任务思路,然后把每一行代码都理解透彻,不能再为了进度而降低代码的质量。
2、今天查询了昨天没有查到的关于from传参的相关知识:
在进行表单提交时,会遇到在提交前增加额外参数的情况,对此有如下几种解决方法:
1. 在表单里使用hidden的input,将参数放到里面。
缺点:在form表单里会增加一些input节点,感觉不爽。
2. 在提交前使用javascript动态在表单里添加input。
缺点:需要写脚本。
3. 使用ajax提交拼接参数。
缺点:如果表单里有文件需要上传,就行不通了。
评论