1

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

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

它不起作用它把我送回去:TypeError: invalid 'in' operand a

我想获取每个元素的背景颜色并将其返回为十六进制颜色。

4

2 回答 2

3

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

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

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

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

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

于 2012-09-30T11:17:35.850 回答
2

正如@pimvdb指出的那样,您的.each语法错误。但是,要返回十六进制颜色,没有本地方法。您必须自己进行转换。看看这个对类似问题的回答:little link

于 2012-09-30T11:22:25.990 回答