今天完成的工作
今天完成的工作是基本实现了随机产生三个方格赋予颜色的变换,在这个变化中。我们先让所有方格颜色重置一变,让后定一个空数组,让我们昨天说的6位16进制的颜色进入空的数组,循环执行3次这个生成颜色并且push三次进入空数组,那么三种颜色就随之确定了。同样定一个空数组,产生0-8的随机数循环三次得到一个3个随机数的数组,并在循环中加如splice这个表达式,这个是让我们选定的格子不与之前相同,因为是取的另一个数组中所以能产生去除原数组中数的效果。
function getColor() {
for (i = 0; i < 9; i++) {
document.getElementsByTagName("div")[i].style.backgroundColor = "#FFCC00";
}
var threeran = [];
for (m = 0; m < 3; m++) {
var str = "#";
// 定义一个十六进制的值的数组
var lzp = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"];
// 遍历循环产生 6 个数
for (var i = 0; i < 6; i++) {
// 随机产生 0~15 的个索引数,然后根据该索引找到数组中对应的值,拼接到一起
var lut = parseInt(Math.random() * 14);
str = str + lzp[lut];
}
threeran.push(str);
}
console.log(threeran)
let f = length => Array.from({
length
}).map((v, k) => k);
var ninesz = f(9)
var newbox = [];
for (k = 0; k < 3; k++) {
var ran = Math.round(Math.random() * (ninesz.length - 1));
console.log(ran)
newbox.push(ninesz[ran]);
ninesz.splice(ran, 1);
};
console.log(newbox);
document.getElementsByTagName("div")[newbox[1]].style.backgroundColor = threeran[1];
document.getElementsByTagName("div")[newbox[2]].style.backgroundColor = threeran[2];
document.getElementsByTagName("div")[newbox[0]].style.backgroundColor = threeran[0];
}
明天要完成的工作
昨天其实定时器也加在了我们的按钮当中,但是出现了一个问题。我们在开始按钮之后,若不是去点击结束的话,再次点击开始按钮后会出现在往里面加入一个定时器的效果。所以在我们按下按钮一之后先要执行一边取消定时器的工作。但是当我们给了一个取消定时器后再次点击并这个取消的效果,不知道这个取消应该怎么加,需要明天思考一下这一块的内容。
评论