Я работаю с неупорядоченными списками, которые являются частью иерархического меню. Мне нужно вернуть элементы списка на основе их класса и позиции в списке, чтобы затем я мог внести некоторые программные c css корректировки. Вот пример HTML:
<ul class="category1">
<li class="sec secactive" secid="360007912231" categoryid="360002246652" parentsecid="null" style="display: list-item;"><a href="myURL">Section1</a></li>
<li class="sec subsec" secid="360008584672" categoryid="360002246652" parentsecid="360007912231" style="background-color: red; display: list-item;"><a href="myURL">Subsection A</a></li>
<li class="sec subsec" secid="360008585372" categoryid="360002246652" parentsecid="360007912231" style="background-color: red; display: list-item;"><a href="myURL">Subsection B</a></li>
<li class="sec" secid="360007910471" categoryid="360002246652" parentsecid="null" style="display: list-item;"><a href="myURL">Section 2</a></li>
<li class="sec" secid="360007155641" categoryid="360002246652" parentsecid="null" style="display: list-item;"><a href="myURL">Section 3</a></li>
<li class="sec subsec" secid="360008585592" categoryid="360002246652" parentsecid="360007912231" style="background-color: red; display: list-item;"><a href="myURL">Subsection A</a></li>
<li class="sec" secid="360007106191" categoryid="360002246652" parentsecid="null" style="display: list-item;"><a href="myURL">Section 3</a></li>
</ul>
Если вы посмотрите на образец HTML, вы увидите, что каждый элемент списка (li
) имеет класс 'se c'. В большинстве случаев элемент списка будет иметь и другие назначения класса, например, «под c».
Я пытаюсь собрать несколько jQuery, которые позволяют мне программно настроить таргетинг на любой «под * 1020». * 'элемент списка, который непосредственно предшествует элементу списка, который НЕ имеет назначения класса' subs c '. Итак, если мы снова посмотрим на образец HTML, я бы хотел иметь возможность возвращать 3-й и 6-й элементы списка. (У них обоих есть класс «subs c», и они появляются прямо перед другим li, у которого НЕТ класса «subs c».)
Вот jQuery, который я пробовал , но он не работает должным образом. (Похоже, он нацелен на ВСЕ элементы списка «под c», а не только на те, которые мне нужно вернуть.)
$("li.subsec").each(function() {
if ($(this).next('li.sec') !='li.subsec');
$(this).css("background-color", "red");
});
Любые советы о том, как исправить мой jQuery код, будут очень признателен.