javascript - HTML 菜单设置父项类(如果子项有类)

标签 javascript jquery

我有一个 HTML 菜单,其中包含 .active类。

<div class="collapse navbar-collapse pull-left" id="navbar-collapse">
<ul class="nav navbar-nav">
    <li><a href="/home">Home</a></li>
    <li class="dropdown">
        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Account <span class="caret"></span></a>
        <ul class="dropdown-menu" role="menu">
            <li class="active"><a href="/account-details">Account Details</a></li>
            <li><a href="/contacts/contacts">Contacts</a></li>
        </ul>
    </li>
</ul>
</div>

active类(class)设置在<li>上项目(父项目和子项目)

如果 url 等于 href,如何使用 javascript 设置项目的事件类菜单项的名称,并使用事件类设置其父项

我尝试用这个 JavaScript 来做到这一点,但没有成功。

<script>
  $(function() {
    $('#navbar-collapse li').each(function() {
      if(this.href.indexOf(window.location.pathname) === 0) {
        $(this).addClass('active');
      } else {
        // case when something was set to active by the server
        $(this).removeClass('active');
      }
    });
  });
</script>

最佳答案

if(document.querySelector('.dropdown .active')
   document.querySelector('.dropdown').classList.add('active');

基本上,如果有的话<li> child 有课.active ,然后分配.active.dropdown元素

编辑:working example

关于javascript - HTML 菜单设置父项类(如果子项有类),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41085571/

相关文章:

javascript - 返回对象时以下未定义

javascript - 使用 mootools 选择伪元素

javascript - Opcheckout 未检测到复选框

javascript - Jquery FileDownload 不触发 successCallback 事件

javascript - 将背景扩展到屏幕边缘

javascript - WordPress图像轮播显示空白图像

c# - Div onload函数和嵌入服务器代码c#

javascript - nodejs settimeout 是否在不同循环中共享变量

javascript - 为 JavaScript 函数添加延迟

javascript - 最初设置后无法删除更改内联 CSS 或从我的 div 中删除整个样式属性