它应该很容易,但不知怎的,我还没有得到这个。希望您能够帮助我。
简单地说:我希望家长LI获得一个课程" item_active"当其中一个孩子的LI也有这个课程时加入。
<ul class="nav navbar-nav">
<li class=""><a href="main"><span>Main</span></a></li>
<li class="dropdown"><a href="services" class="dropdown-toggle" data-toggle="dropdown"><span>Services</span></a>
<ul class="dropdown-menu">
<li><a href="first"><span>First</span></a></li>
<li class="item_active"><a href="second"><span>Second</span></a></li>
<li><a href="third"><span>Third</span></a></li>
</ul>
</li>
<li><a href="about"><span>About</span></a></li>
<li><a href="contact"><span>Contact</span></a></li>
</ul>
您会看到子下拉菜单中的第二个LI有类&#34; item_active&#34;。
在这种情况下,我希望jQuery添加类&#34; item-active&#34;通过课程&#34;下拉&#34;到LI在我的情况下。
我尝试了很多不同的东西。这可能是最接近的,但它没有做任何事情:
$('.navbar-nav li ul li').each(function(){
if($(this).hasClass('item_active')) {
$(this).closest('.dropdown').addClass('item_active');
}
});
我在SO中已经阅读了许多不同的答案,但没有解决这个问题的答案。
答案 0 :(得分:1)
您提供的小提琴不使用jQuery。加载它,它会工作。
DEMO:https://jsfiddle.net/dirtyd77/cxnx1147/6/
另外,请记住,bootstrap使用覆盖属性的特定类。仅仅因为你不能“看到”这个类,并不意味着它没有被添加到元素中。
为了说明这一点,我使用了以下内容:
.item_active {
background: yellow!important;
}
重要的是要注意!important
不被视为良好做法。
希望这会有所帮助。