我希望让父div更改其背景颜色,具体取决于其子颜色(包括css:悬停状态)。这是我能想到的最好的,但它不起作用......
if ($('.selector:last-child').css('background-color') == '#dddddd') {
$('.controler').css('background-color', '#dddddd');
}
else if ($('.selector:last-child').css('background-color') == '#2a2a2a') {
$('.controler').css('background-color', '#2a2a2a');
}
else {
$('.controler').css('background-color', '#ffffff');
}
答案 0 :(得分:0)
这是因为jQuery返回你的背景而不是HEX而是rgb,所以你可以改变你的代码,如
if ($('.selector:last-child').css('background-color') == 'rgb(255, 255, 0)') {
$('.controler').css('background-color', 'rgb(255, 255, 0)');
}
答案 1 :(得分:0)
您可以使用子项设置父级的background-color
属性:
$('.controler').css('background-color', $('.selector:last-child').css('background-color'));
然后,只要背景颜色发生变化,你就需要触发它。
答案 2 :(得分:0)
这是一个有趣的问题,因为如果css继承。我建议让子元素具有“background-color:inherit”并仅更改父元素的背景颜色。之后,您只需要jsfiddle的第二部分。 如果你不想这样做,这里是一个答案:Fiddle
How the heck do you post links to jsFiddle?