jQuery - 以十六进制获取元素背景颜色

时间:2012-09-30 11:12:09

标签: jquery css styles background-color

我正在尝试获取元素背景颜色

$(document).ready(function(){
    $.each('.log-widget',function(){
    console.log($(this).css('backgroundColor'));
    //$(this).css({'box-shadow':'1px 1px 20px'+});
   });
  });

它无法发送回:TypeError: invalid 'in' operand a

我想抓住每个元素的背景颜色并将其返回到十六进制颜色。

2 个答案:

答案 0 :(得分:3)

你正在迭代一个不是你想要的字符串。你想要.each

$(".log-widget").each(function() { ... });

或者,您可以使用$.each,但使用jQuery集:

$.each($(".log-widget"), function() { ... });

在任何情况下,你必须从选择器字符串创建一个集。

答案 1 :(得分:2)

正如@pimvdb所指出的,您的.each语法错误。但是,要返回十六进制颜色,则不存在本机方式。你必须自己做转换。看一下类似问题的答案:little link