javascript - jQuery 定位 `ul` 中的下一个 `li` 元素,类为 `active`

标签 javascript jquery html

无法弄清楚我做错了什么,因为我没有收到任何错误。本质上,我想定位包含 active 类的唯一 li 中的下一个 ul 元素。

我的 HTML 是:

<li id="abc"></li>
<li id="account" class="active">
  <a href="#"><img class="menu-logo-symbol" src=" /img/app/logo-symbol.png">Your Account</a>
  <ul class="nav-pills nav-stacked sub-nav nav-list" style="display: none;">
    <li id="account-details"></li>
    ......
  </ul>
</li>

我尝试过以下方法:

var checkElement = $('li.active').next('ul');
checkElement.slideDown('normal');

$('li.active').next('ul').show();

还有

$('li.active').next('ul').slideDown('normal');

谢谢

最佳答案

在 jQuery 中,next()prev() 查找同级元素,或者在 DOM 中处于相同深度的元素。在这种情况下,由于 ul.active 的子元素,因此您实际上需要使用 find() 方法,如下所示: $('li.active').find('ul').first().show();

first()find() 结合使用可确保它仅返回单个 ul 元素,而不返回任何其他元素可能嵌套得更深。

关于javascript - jQuery 定位 `ul` 中的下一个 `li` 元素,类为 `active`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35067096/

相关文章:

java - primefaces 动态 Accordion 未将值解析为选项卡更改监听器

javascript - 数据表搜索,Orderby 不起作用

javascript - JQuery 淡出

javascript - 未捕获的语法错误 : Unexpected token & due to &quot error

php - 链接文件(样式表、脚本文件、图像等)

javascript - 在 setTimeout 中使用时,IE 参数未定义

jquery - 从 slect2.js 标签中的选项获取类

javascript - jQuery 日期选择器本地化不起作用

javascript - jQuery 绝对侧边栏滚动,停止在父项的顶部和底部

javascript - HTML anchor 标记在其他地方按预期工作时无法在 iPhone 上打开页面