jquery - 无法在 if 语句中使用 $(this)

标签 jquery

如何在 if 语句中使用 $(this) 引用 $('nav > .smart-nav > li') 而不是 $( '.nav-秒')

这是代码-

if ($('nav > .smart-nav > li').is('.active')) {
  $('.nav-second').addClass('in');
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<nav>
  <ul class="nav smart-nav">
    <li><a href=""><i class="fa fa-home"></i> <span>Dashboard</span></a></li>
    <li class="active">
      <a data-toggle="collapse" aria-expanded="false" class="collapsed">
        <i class="fa fa-home"></i><span>Administrator Portal</span><span class="sub-nav-icon"> <i class="fa fa-angle-down"></i> </span>
      </a>
      <ul id="" class="nav nav-second collapse" aria-expanded="false">
        <li><a href="administrator-portal.html">Dashboard</a></li>
        <li><a href="activity.html">Customer Report</a></li>
      </ul>
    </li>
    <li>
      <a data-toggle="collapse" aria-expanded="false" class="collapsed">
        <i class="fa fa-support"></i><span>Support</span><span class="sub-nav-icon"> <i class="fa fa-angle-down"></i> </span>
      </a>
      <ul id="" class="nav nav-second collapse" aria-expanded="false">
        <li><a href="tableStyles.html">Logs</a></li>
      </ul>
    </li>
  </ul>
</nav>

最佳答案

如下所示:-

$('.smart-nav > li.active').children('ul.nav-second').addClass('in');

示例:-

$('.smart-nav > li.active').children('ul.nav-second').addClass('in');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<nav>
    <ul class="nav smart-nav">
        <li><a href=""><i class="fa fa-home"></i> <span>Dashboard</span></a></li>
        <li class="active">
            <a data-toggle="collapse" aria-expanded="false" class="collapsed">
                <i class="fa fa-home"></i><span>Administrator Portal</span><span class="sub-nav-icon"> <i class="fa fa-angle-down"></i> </span>
            </a>
            <ul id="" class="nav nav-second collapse" aria-expanded="false">
                <li><a href="administrator-portal.html">Dashboard</a></li>
                <li><a href="activity.html">Customer Report</a></li>
            </ul>
        </li>
        <li>
            <a data-toggle="collapse" aria-expanded="false" class="collapsed">
                <i class="fa fa-support"></i><span>Support</span><span class="sub-nav-icon"> <i class="fa fa-angle-down"></i> </span>
            </a>
            <ul id="" class="nav nav-second collapse" aria-expanded="false">
                <li><a href="tableStyles.html">Logs</a></li>
            </ul>
        </li>
    </ul>
</nav>

关于jquery - 无法在 if 语句中使用 $(this),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44456709/

相关文章:

javascript - 将 ListView 的值传递给ajax

javascript - 如何增加按钮点击jquery的数值

javascript - 在新页面中加载非特定点击图像

javascript - 具有同步导航的 slider

jQuery FancyBox : How do I increase the width of the element #fancybox-wrap by 10 px?

jquery - nivo slider 标题中的 z-index 问题

javascript - jQuery LightSlider 不工作,但在 JSFiddle 中工作得很好

javascript - 将 javascript var 值发送到 php 页面(不是 ajax)

javascript - 无论我选择哪个选项,Chrome 扩展都会打开 contextMenus 中的所有指定链接。我怎样才能避免这种情况?

javascript - JQuery append() 不追加