当前功能是为RGB生成随机数,并根据其设置RGB颜色。
function randomColor(){
r = Math.floor(Math.random() * (256));
g = Math.floor(Math.random() * (256));
b = Math.floor(Math.random() * (256));
jQuery('.bg').css('background-color','rgb('+r+','+g+','+b+')');
jQuery('#ms-tile-color').attr('content','rgb('+r+','+g+','+b+')');
}
jQuery(document).ready(function(){
randomColor();
var t = setInterval(randomColor,5000);
});
function rollBg() {
$('.bg.hidden').css('background', randomColor());
$('.bg').toggleClass('hidden');
}
我想创建一个类似于下面数组的数组,并从中选择一个随机值并继续设置颜色。
var colourArray = [
{r: 40, g: 29, b: 45},
{r: 107, g: 107, b: 181},
{r: 78, g: 100 , b: 78}
];
如何设置数组r,g,b
中的值jQuery('.bg').css('background-color','rgb('+r+','+g+','+b+')');
jQuery('#ms-tile-color').attr('content','rgb('+r+','+g+','+b+')');
这是我不理解的地方
感谢您的帮助
答案 0 :(得分:0)
您可以从数组中获取一个随机条目,然后只引用您抓取的元素中的字段并将其放入css中。
function randomColor() {
var rand = colourArray[Math.floor(Math.random() * colourArray.length)];
r = rand.r
g = rand.g
b = rand.b
jQuery('.bg').css('background-color', 'rgb(' + r + ',' + g + ',' + b + ')');
jQuery('#ms-tile-color').attr('content', 'rgb(' + r + ',' + g + ',' + b + ')');
}
jQuery(document).ready(function() {
randomColor();
var t = setInterval(randomColor, 5000);
});
function rollBg() {
$('.bg.hidden').css('background', randomColor());
$('.bg').toggleClass('hidden');
}
var colourArray = [{
r: 40,
g: 29,
b: 45
},
{
r: 107,
g: 107,
b: 181
},
{
r: 78,
g: 100,
b: 78
}
]

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="ms-tile-color" class="bg" style="height: 100px; width: 100px;"></div>
&#13;