我有一个不同深度的列表:
<ul id="top-level" class="top-level">
<li>Item 1</li>
<li>Item 2
<ul class="sub-menu">
<li>Sub item 1</li>
<li>Sub item 2</li>
<li>Sub item 3
<ul class="sub-menu">
<li>Subsub item 1</li>
<li>Subsub item 2</li>
</ul>
</li>
<li>Sub item 4</li>
</ul>
</li>
<li>Item 3</li>
</ul>
我使用以下jquery脚本向父类添加一个类:
$("ul li ul").parent().addClass("menuparent");
有没有办法只将这个类添加到顶级父li
',并为所有其他(更深)父li
添加另一个类?
答案 0 :(得分:2)
只需使用顶级>
中的ul
选择器。
根据您当前的选择器:
$("ul.top-level > li > ul").parent().addClass("menuparent");
仅适用于li
:
$("ul.top-level > li").parent().addClass("menuparent");
答案 1 :(得分:1)
对于顶级li
s
$("#top-level > li").addClass("menuparent");
和更低级li
$("#top-level li li").addClass("someotherclass");
答案 2 :(得分:0)
如果我理解正确,人们不会给你找到更深层次的父母 li的答案,这是我的看法:
$("ul.top-level > li > ul").find('li > ul').parent().addClass("deeper-parent-li");