jquery - 选择具有特定背景颜色的元素

标签 jquery css jquery-selectors

我想在 div 中选择一堆 span,其 CSS 包含特定的背景颜色。我如何实现这一目标?

最佳答案

如果我正确理解问题,选择器 [attribute=value] 不会工作因为<span>不包含属性“背景颜色”。您可以快速测试以确认它不会匹配任何内容:

$('#someDiv span[background-color]').size(); // returns 0

给出:

.one, .two {
  background-color: black;
}

.three {
  background-color: red;
}

这是一个会起作用的片段:

$('div#someDiv span').filter(function() {
    var match = 'rgb(0, 0, 0)'; // match background-color: black
    /*
        true = keep this element in our wrapped set
        false = remove this element from our wrapped set
                                                         */
    return ( $(this).css('background-color') == match );

}).css('background-color', 'green'); // change background color of all black spans
.one, .two {
  background-color: black;
}

.three {
  background-color: red;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.0/jquery.min.js"></script>

<div id="someDiv">
    <span class="one">test one</span>
    <span class="two">test two</span>
    <span class="three">test three</span>
</div>

关于jquery - 选择具有特定背景颜色的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/282198/

相关文章:

javascript - 如何根据文件名将图像包装在标签中

jquery 正则表达式选择器

jQuery:选择祖 parent

javascript - CSS Accordion 菜单按钮

javascript - 如何更改文本区域中闪烁的光标/插入符号

html - 100% 高度包装器中的可滚动 Div

javascript - 为什么在 alpha 动画之后图形在 IE 中有丑陋的黑色边框?

javascript - 如何定位任何网页的所有 div 但在 javascript 中区分它们?

jQuery CSS 选择器问题

javascript - Jquery 用一个类替换所有 DIV 内的空格的点