[英]jquery selector - choosing parents but not children
我正在尝试使用jquery选择一个元素并将一个类添加到该元素。 我的html类似于以下内容:
<ul id="top">
<li class="menu-item menu-item-type-post_type menu-item-object-page current-menu-ancestor current-menu-parent current_page_parent current_page_ancestor">
<a href="#">Corporate</a>
<ul class="sub-menu">
<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-11">
<a href="#">Press</a>
</li>
<li class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-88 current_page_item menu-item-90">
<a href="#">Press</a>
</li>
</ul>
</li>
<li><a href="#"></a></li>
<li><a href="#"></a></li>
<li><a href="#"></a></li>
<li><a href="#"></a>
<ul class="sub-menu"><li><a href="#">Link</a></li></ul>
</li>
</ul>
我想为每个锚链接添加一个“箭头”类,它是第一级<li>
元素的直接子代。 换句话说,我希望“公司”链接具有“箭头”类,但.submenu中的任何锚定链接都不具有该类。 我已经尝试了以下jquery( $("li.current_page_ancestor a:nth-child(1)").addClass("arrow");
),但是它将类添加到每个锚链接中,这很有意义。 如何将该类添加到作为顶级列表项的直接子级的锚链接中?
>
是子选择器:
$('li.current_page_ancestor > a').
add($('.sub-menu').parent().children('a')).
addClass('arrow');
像这样?
$('ul#top > li > a').addClass('arrow')
css-选择器“>”表示“直接后代”或“直接子代”。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.