如何通过jquery随机颜色脚本检查哪个颜色已分配给div

时间:2014-05-07 15:57:36

标签: jquery random colors assign

我从这里得到了这个脚本

http://jsfiddle.net/r74j6/6/

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;
 }

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

它指定一种随机颜色。我正在应用它的所有单个元素....  $(“div,a,p,img ... etc”)。each(function(){

然后我该如何检查哪个div有哪种颜色?

最终我想最终得到一个非常可怜的男人的萤火虫。 ...所以如果你将鼠标悬停在元素上,它会告诉你它是什么。

感谢您的任何想法

2 个答案:

答案 0 :(得分:0)

您可以使用:

$(".jump-response").mouseover(function() {
    console.log($(this).css('background-color'));    
});

<强> Updated Fiddle

如果您想获取十六进制值而不是rgb,那么您可以使用自定义函数,例如 this

function rgb2hex(rgb) {
    rgb = rgb.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/);
    function hex(x) {
        return ("0" + parseInt(x).toString(16)).slice(-2);
    }
    return "#" + hex(rgb[1]) + hex(rgb[2]) + hex(rgb[3]);
}

然后使用:

调用它
$(".jump-response").mouseover(function() {
    console.log(rgb2hex($(this).css('background-color')));    
});

<强> Fiddle Demo

答案 1 :(得分:0)

您可以添加与您添加到每个元素的颜色相匹配的title属性:

$(".jump-response").each(function() {

    var myColor = get_random_color();

    $(this)
        .css("background-color", myColor)
        .attr('title', 'Color: ' + myColor);

});

这是fiddle to demonstrate