簡體   English   中英

如何為ul列表添加/刪除活動課程?

[英]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' )

它將查找linavbar-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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM