【问题标题】:bootstrap remove class active from nav引导从导航中删除活动类
【发布时间】:2014-12-11 03:29:35
【问题描述】:

我只是无法从导航栏中删除“活动”类。我试过这个:

$(document).ready(function(e){ e.stopImmediatePropagation(); $('.nav li').removeClass('active');//or $('.active').removeClass('active'); });

也试过这个:

setInterval(function(){ $('.active').removeClass('active');//remove class active },1000);

编辑:

这确实有效,但对我不起作用:

jQuery(document).ready(function($){$('.nav li').removeClass('active');});}

我不得不提一下,我在下拉菜单中有另一个导航,它可能会触发 Twitter Bootstrap 导航选项卡中的“活动”类。所以我想我只能在给主导航的类上应用这个功能? 所以我尝试了这个:

<script>jQuery(document).ready(function($){$('.no-active li').removeClass('active');});} </script>

HTML:

&lt;ul id="menu-menu-1" class="nav navbar-nav no-active"&gt;

但我的主导航在移动时仍然会“激活”类:

<ul class="nav nav-tabs">

【问题讨论】:

  • 为什么不直接在 html 中删除呢?您可以在 CMS 应用程序的菜单功能中添加它。
  • 这里没有 html。 'active' 类来自引导程序内部功能。

标签: jquery twitter-bootstrap


【解决方案1】:

更新

如果您使用的是 Bootstrap 导航选项卡,那么这对我来说可以从当前活动的列表元素中删除活动

$(".nav-tabs > li.active").removeClass("active")

我不认为只选择 .nav 会起作用,因为它会选择所有具有 'nav' 类的元素(包括您的主导航)。我仍然不确定我是否 100% 理解您的问题,但我希望这会有所帮助。


我刚刚在 Bootstrap 网站上尝试过这个(你有 Bootstrap 导航栏吗?)使用 Chrome 开发工具和

$('.nav li').removeClass("active")

对我来说很好。您能否提供一个 HTML 示例?

【讨论】:

  • 我在控制台中得到一个错误:“Uncaught TypeError: undefined is not a function”
  • @user48915 -- 并且 jQuery 已加载?这是我在不是时得到的错误
  • JQuery 一定要加载。在这个脚本之前我有几个函数。
  • &lt;ul id="menu-menu-1" class="nav navbar-nav no-active"&gt; 这是我的主要导航。在下拉列表中,我有标签导航&lt;ul class="nav nav-tabs"&gt;。跨标签移动时,我的主要导航 li 元素由于打开的标签而变得活跃。
  • 所以我也试过这个:$(".navbar-nav &gt; li.active").removeClass("active") 仍然不起作用。
猜你喜欢
  • 2014-05-31
  • 2021-06-10
  • 2012-01-12
  • 1970-01-01
  • 1970-01-01
  • 2017-04-25
  • 1970-01-01
  • 2015-12-25
  • 2014-05-29
相关资源
最近更新 更多