[英]How do I add/remove active class for a ul list?
单击时,活动类将保留原来的“ li”,该类应已更改。 我试图弄乱代码,但找不到解决方案。 有人可以检查我错过的内容吗? 我想我在讲一些我的代码特有的信息。 我试过“使用jQuery为UL列表添加/删除活动类?” 但这没有帮助。 如果您可以在我的代码中找到错误,那就太好了。
HTML:
<div class="collapse navbar-collapse navbar-ex1-collapse">
<ul class="nav navbar-nav navbar-right">
<li class="active"><a href="#juk">About</a></li>
<li><a onclick="myFunction1()">Development</a></li>
<li><a href="http://docs.kde.org/stable/en/kdemultimedia/juk/index.html">Wiki/Documentation</a></li>
<li><a onclick="myFunction()">Screenshots</a></li>
<li class="dropdown">
<a data-toggle="dropdown" class="dropdown-toggle" href="#">Releases </a>
<ul class="dropdown-menu">
<li><a href="ftp://ftp.kde.org/pub/kde/stable/latest">JuK Latest</a></li>
<li><a href="http://developer.kde.org/~wheeler/files/src/juk-1.95a.tar.gz">JuK 1.95</a></li>
<li><a href="http://developer.kde.org/~wheeler/files/src/juk-1.1.tar.gz">JuK 1.1</a></li>
<li><a href="http://developer.kde.org/~wheeler/files/src/juk-1.0-1.tar.gz">JuK 1.0</a></li>
</ul>
</li>
<li><a href="#contactus">Contact Us</a></li>
</ul>
</div>
JS:
$(function() {
( 'ul.nav.navbar-nav.navbar-right li' ).on( 'click', function() {
$( this ).parent().find( 'li.active' ).removeClass( 'active' );
$( this ).addClass( 'active' );
});
});
您在.on('click')
事件中定位了错误的<li>
元素
你说
$( 'ul.nav navbar-nav navbar-right li' )
它将查找li
是navbar-right
的孩子,也是navbar-nav
的孩子,也是navbar-nav
ul.nva
的孩子。
您应该针对的是:
$( 'ul.nav.navbar-nav.navbar-right li' )
注意li
前面的空格吗? 那是因为它是ul
元素的后代,具有多个类。
我知道您从HTML DOM元素复制了类列表,但是如果要谈论具有多个类的单个元素,则必须在jQuery选择器中避免空格。
$(function() { $('ul.nav.navbar-nav.navbar-right li').on('click', function() { $(this).parent().find('li.active').removeClass('active'); $(this).addClass('active'); }); });
.active { background-color: gold; }
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script> <div class="collapse navbar-collapse navbar-ex1-collapse"> <ul class="nav navbar-nav navbar-right"> <li class="active"><a href="#juk">About</a></li> <li><a>Development</a></li> <li><a href="#">Wiki/Documentation</a></li> <li><a >Screenshots</a></li> <li class="dropdown"> <a data-toggle="dropdown" class="dropdown-toggle" href="#">Releases </a> <ul class="dropdown-menu"> <li><a href="#">JuK Latest</a></li> <li><a href="#">JuK 1.95</a></li> <li><a href="#">JuK 1.1</a></li> <li><a href="#">JuK 1.0</a></li> </ul> </li> <li><a href="#contactus">Contact Us</a></li> </ul> </div>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.