发表于: 2019-12-10 22:00:20

1 1029


今天完成的工作

今天主要是把昨天重新提出的一个思路用代码表示出来,思路是通过一个数组将它存放我们杀人的编号,在这个方案中之前存在的问题是我们的在展示页面定义时每次跳转后都会重新变成新数组。解决的办法是今天我在它的前一个页面本地存储了一个空数组,当我们存放数据时都是向这个本地的数组中添加,再次跳转时就依旧会有我们前一次的值了。

       killzt.push(localStorage.getItem("jihao"))

        localStorage.setItem('ztsz'JSON.stringify(killzt))

        window.location.href = "task4kssr.html"

之后就是将我们这个数组中的值赋给我们另一个页面要显示的部分

//显示我们的死亡状态

for (let i = 1i < 18i++) {

    if (everyday.length == i) {

        for (a = 0a < ia++) {

            show[a].style = "display:block"

            which[a].innerHTML = everyday[a]

            smsf[a].innerHTML = sf[everyday[a] - 1]

        }

    }

}

判断时根据我们的数组长度确定的,通过数组长度判断的话。当我们第二天的显示状态同时能显示再其中,另外是做了我们的一个按钮点击的顺序判断,当我们第一次跳转到这个页面时只有第一个按钮可以使用,跳转,点击其他按钮时会显示请按照步骤操作,等从投票页跳转回来时,我们的亡灵发言按钮就可以点击了,所以我用了一个本地存储,当我们点击第一个按钮的时候会向本地存一个数,用这个值做判断我们就可以确定其他按钮是再这个条件触发后再生效的,到我们亡灵发言点击时再向里面存一个值,判断这个值可以继续往下进行。

if (localStorage.getItem("djsx") == 0) {

    btn[1].onclick = function () {

        alert("亡灵发言")

        btn[1].style.backgroundColor = "red"

        if (btn[1].style.backgroundColor = "red") {

            btn[1].onclick = function () {

                alert("不能这样玩游戏")

            }

        }

        localStorage.setItem("djsx"1)

        if (localStorage.getItem("djsx") == 1) {

            btn[2].onclick = function () {

                alert("玩家发言")

                btn[2].style.backgroundColor = "red"

                if (btn[2].style.backgroundColor = "red") {

                    btn[2].onclick = function () {

                        alert("不能这样玩游戏")

                    }

                }

                localStorage.setItem("djsx"2)

                btn[3].onclick = function () {

                    window.location.href = "task7b.html"

                }

            }

        }

    }

另外是做了一个点击后颜色的变化,开始时我一样想通过数组的长度来判断我们要显示几个按钮是红色,即是考虑到了后几天的这个颜色变化的问题,再我们做偶数长度的判断时可以利用循环把我们索要显示的按钮都渲染一遍,但是基数长度时因为涉及到许多单个冒出来的所以可能比较难以实现,明天可以再考虑一下。

// for (let i = 0; i < 18; i++) {

//     if (everyday.length = i + 1) {

//         if (everyday.length % 2 == 0) {

//             for (a = 0; a < i + 1; a++) {

//                 dropdown[a].getElementsByClassName("sr")[0].style.backgroundColor = "red"

//                 dropdown[a].getElementsByClassName("sr")[1].style.backgroundColor = "red"

//                 dropdown[a].getElementsByClassName("sr")[2].style.backgroundColor = "red"

//                 dropdown[a].getElementsByClassName("sr")[3].style.backgroundColor = "red"

//             }

//         }

//     }

// }

所以直接写了一个第一天中的红色判断看看效果。

明天要完成工作

明天要完成的任务依旧时第一天中的内容,并且要考虑第一天向第二天过渡后需要出现的问题,逐个去克服去尝试。



返回列表 返回列表
评论

    分享到