Выбор элементов с определенным цветом фона - PullRequest
27 голосов
/ 12 ноября 2008

Я хочу выбрать группу span с div, чей CSS содержит определенный цвет фона. Как мне этого добиться?

Ответы [ 2 ]

43 голосов
/ 12 ноября 2008

Если я правильно понял вопрос, селектор [attribute=value] не будет работать , поскольку <span> не содержит атрибута "background-color". Вы можете быстро проверить это, чтобы убедиться, что оно не будет ничего соответствовать:

$('#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>
0 голосов
/ 12 ноября 2008

Используйте селектор атрибута [attribute = value] для поиска определенного значения атрибута.

#id_of_the_div span[background-color=rgb(255,255,255)]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...