我创建了一个数组,该数组随机创建x数量的RGB颜色。我想获取此信息并将数组中的每个元素分配给一个方形按钮。因此,想法是在每个实例运行代码时,方形按钮将为其获得新的RGB颜色。
var generateColors = generateArray(6);
var generateColorOptions = document.querySelectorAll(".colorSquare");
// giving each button a color value from the array
for(var i = 0; i < generateColorOptions.length; i++) {
generateColors[i].style.background = generateColors[i];
}
//want to make one of the RGB values created the solution RGB that prints in the beiggining
function generateArray(num) {
var colorArray = [num];
for(var i = 0; i < num.length; i++) {
//random color generated
colorArray.push(generateRGBNumber());
//want to always push an array element to be the given RGB value
}
return colorArray;
}
function generateRGBNumber() {
var num = Math.round(0xffffff * Math.random());
var r = num >> 16;
var g = num >> 8 & 255;
var b = num & 255;
return 'rgb(' + r + ', ' + g + ', ' + b + ')';
}
答案 0 :(得分:0)
您正在更改generateColors函数的背景,将其更改为generateColorOptions。 同样,decalre colorArray是[],并且仅循环迭代num。不是num.length,因为number是一个函数。使用下面的代码。
var generateColors = generateArray(6);
var generateColorOptions = document.querySelectorAll(".colorSquare");
// giving each button a color value from the array
for (var i = 0; i < generateColorOptions.length; i++) {
generateColorOptions[i].style.background = generateColors[i];
}
//want to make one of the RGB values created the solution RGB that prints in the beiggining
function generateArray(num) {
var colorArray = [];
for (var i = 0; i < num; i++) {
//random color generated
colorArray.push(generateRGBNumber());
//want to always push an array element to be the given RGB value
}
return colorArray;
}
function generateRGBNumber() {
var num = Math.round(0xffffff * Math.random());
var r = num >> 16;
var g = num >> 8 & 255;
var b = num & 255;
return 'rgb(' + r + ', ' + g + ', ' + b + ')';
}