Существует два div с классами .div1 и .div2. Каждый из них содержит один и тот же код - те же элементы с одинаковыми именами классов. Если мне нужно установить/получить значение элемента внутри одного из div, как я могу обратиться к этим элементам? Стараюсь следующее:jquery selector: дочерние элементы одного класса внутри divs разных классов
var hostPopup = "hostdiv" + selectedPopup + " "; // where selectedPopup = "1" or "2"
$(hostPopup + '.testColor').css('background-color', rgba);
$(hostPopup + '.testColorText').css({'color': rgba, '-webkit-filter': 'invert(100%)', 'filter': 'invert(100%)'});
Это не работает. Но если я использую hostPopup указать хост DIV только для одной операции - которая работает на первой линии здесь:
$(hostPopup + '.testColor').css('background-color', rgba);
$('.testColorText').css({'color': rgba, '-webkit-filter': 'invert(100%)', 'filter': 'invert(100%)'});
Works!
Вот пример куска моего HTML:.
<div class="hostdiv1" style="padding: 0;"> <!-- hostdiv2 has exactly the same code in it -->
<div class="NamesDiv nameTypesDiv" style="background-color: dimgray;">
<div class="namesClass">
<b>1.</b> Add names
</div>
<div class="testColor" style="background-color: rgb(124,124,124); color: white;"><p class="testColorText">Test</p></div>
<div class="rangeDiv" style="height: 120px;">
<div class="rangeBars"><input type="range" class="rangeR" min="0" max="100" value="50" tabindex="0"></input>
<output for="rangeR" class="outR outRange">50</output></div>
Итак, почему $ ("nodeDiv1class .itsinnerelementclass") 'действие' ... не хочет работать с itsinnerelementclass элементом, находится где-то внутри элемента с классом nodeDiv1class?
Символ периода отсутствует в вашем первом классе селектора ('" div "+ selectedPopup +" "'). –