jquery - 将随机背景颜色应用于多个 DIV

标签 jquery html css background-color

我在页面上有一系列 DIV(每个都有相同的类)。在加载时,我想随机化每个 DIV 的颜色。

我想为给定的 DIV 选择一种颜色,然后为下一个选择颜色,依此类推。

我找到了这篇文章:Apply random color to class elements individually?

我不懂 jquery,但是我已经开始更改代码以反射(reflect)我正在使用的类的名称:

$(document).ready(function() {
$('.main').each(function () {
    var hue = 'rgb(' + (Math.floor((256-199)*Math.random()) + 200) + ',' + (Math.floor((256-199)*Math.random()) + 200) + ',' + (Math.floor((256-199)*Math.random()) + 200) + ')';
    $(.jump-response).css("background-color", hue);
});
});

我们将不胜感激!

--

此处的代码示例:http://jsfiddle.net/ollyf/LmwYP/

我还应该添加来自预设/预定颜色列表的随机背景颜色。

最佳答案

我不知道你的 html,但假设你的 div 定义如下。

<div class="jump-response">one</div>
<div class="jump-response">two</div>

代码中的主要问题是如何选择元素。

1。解决方案

$(function() {
    $(".jump-response").each(function() {
        var hue = 'rgb(' + (Math.floor((256-199)*Math.random()) + 200) + ',' + (Math.floor((256-199)*Math.random()) + 200) + ',' + (Math.floor((256-199)*Math.random()) + 200) + ')';
         $(this).css("background-color", hue);
    });
});

jsFiddle Demonstration

2。解决方案

您可以使用以下函数来获得随机颜色

function get_random_color() {
    var letters = '0123456789ABCDEF'.split('');
    var color = '#';
    for (var i = 0; i < 6; i++ ) {
        color += letters[Math.round(Math.random() * 15)];
    }
    return color;
}

并应用颜色

$(".jump-response").each(function() {
    $(this).css("background-color", get_random_color());
});

jsFiddle Demonstration

关于jquery - 将随机背景颜色应用于多个 DIV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10540301/

相关文章:

jquery - 使用 JQuery .animate() 从一个值开始并以另一个值结束

javascript - 使用 j 查询在一个下拉列表中选择选项时如何填充 json?

javascript - Jquery、Ajax 未触发正确的 php 函数

jquery - 聊天模块textarea输入

jquery - 将 HTML 输入值传递给 APEX Controller

html - 通过css为每个页面设置默认标题?

html - Bootstrap 3 如何删除或移动小型设备(平板电脑、智能手机)下方的偏移量?

html - 如何在不影响内联 block 垂直对齐的情况下向右浮动?

php - 如何在 jquery 中发出警报,以了解要添加的事件是否已在数据库中或与其他事件的时间表冲突?

javascript - JS 脚本在 Pug 和 Jade 文件中的位置重要吗?