Страницы

Поиск по вопросам

понедельник, 6 января 2020 г.

Присвоение класса вложенным и предшествующим элементам

#javascript #jquery #списки


Здравствуйте. Есть следующая разметка html



$('.cd-main-nav li').has('ul').addClass('test');
.test {
background-color:red;
}






Вопрос: как присвоить новый класс (допустим .test как в примере) тегу A, который
находится в LI, имеющему вложенный список UL, и предшествует этому UL.
Сейчас класс присваивается всему пункту LI.
Сколько не бился - не выходит. Помогите справиться с этой задачкой. 
    


Ответы

Ответ 1



Для подсветки всех вложенных элементов: поиск элементов внутри выбранных - метод .find() $('.cd-main-nav li').has('ul').find('a').addClass('test'); Для подсветки родителей этих вложенных элементов: поиск элементов лежащих перед выбранными $('.cd-main-nav li ul').prev().addClass('test');

Ответ 2



$('.cd-main-nav li').has('ul').find('a').addClass('test'); .test { background-color:red; } Если же надо выделать только ссылки в внутреннем списке тогда - $('.cd-main-nav li ul a').addClass('test'); .test { background-color:red; }

Ответ 3



$('.cd-main-nav li').has('ul') .children('a') .addClass('test');

Комментариев нет:

Отправить комментарий