每次使用jquery用css中的颜色替换此颜色
我有很多div
,其中一些有background-color: #aaa
,其他有字体color: #aaa
,其他有border-color: #aaa
。 其他div
有不同的颜色,没关系。
我想在CSS的各处将这些颜色( #aaa
)更改为#ccc
。
我知道如何更改背景div
颜色,但这里不是问题,我有太多的div
来逐一改变它们。
我正在尝试找到一个jQuery函数,它允许我找到一个单词(这里是#aaa
)并用CSS中的其他( #ccc
)替换它。
它应该是这样但我的代码不正确:
$("*").if(backgroundColor == "#aaa"){replace by "#ccc"}, if(color == "#aaa"){replace by "#ccc"}, if(borderColor == "#aaa"){replace by "#ccc"}, etc..
你想迭代你想要的所有类型的元素(在这种情况下,我选择div
因为它是超常见的)并动态分配颜色,如下所示:
HTML:
Some text Some text Some text Some text
JQuery的:
$("#change").click(function () { $("div").each(function () { var color = $(this).css("color"); if (color == "rgb(170, 170, 170)") { $(this).css("color", "#ccc"); } }); });
注意:JQuery .css()
返回RGB颜色值,如rgb(r,g,b),因此您需要将返回的RGB值转换为HEX值。 这可以以编程方式完成,但不在本问题的范围内。
CSS:
#one, #two { color: #aaa; } #three, #four { color: green; }
这是JSFiddle: