繁体   English   中英

遍历无序列表-jQuery

[英]Traversing an unordered list -jQuery

我有这样的事情:

  • 第一层
    • 2级1级
      • 3级
      • 3级2级
    • 2级2楼
  • 第一层2

我想对所有包含li元素的li元素后面的所有兄弟li元素添加class。

我尝试这样做

$(li>a).next().addClass('makebold');

$(li> a)确实选择了第一个级别的 li元素,然后根据next()选择了紧随其后的选定/匹配元素的同级元素,应通过添加类来使BOLD变为大胆的元素必须是第一级2

but the li elements-of 2nd and 3rd level are getting bold . I am wondering why ?

这是我的ul列表的html代码

<ul> <li><a href="">first level 1</a> <ul> <li>2nd level 1 <ul> <li><a href="">3rd level</a></li> <li>3rd level 2</li> </ul> </li> <li>2nd level 2</li> </ul> </li> <li>first level 2</li>
</ul>

您选择的是a后面的元素,而不是li后面的元素。 使用此代替:

$('li > a').parent().next().addClass('makebold');

这个怎么样:

$('li > a').parent().find('li').addClass('makebold');

选择作为具有锚元素的li元素的后代的li元素作为子元素。 希望我已正确理解您的问题。 根据其他答案,我只能假设我们中有些人不了解您的要求。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM