簡體   English   中英

如何使用jQuery隱藏除最后一個元素(按類)以外的所有元素

[英]How to hide all elements except the last one (by class) using jQuery

我有一個看起來像這樣的菜單(以1個列表項為例):

<ul class="dyn makeLink" style="display: block;">
    <li id="licategory_1">
        <a href="/nfl-lines" title="" class="linkItem">
            <strong>NFL</strong>
        </a>
        <span class="expCollPos" >
            <span class="collapsed"></span>
        </span>
        <span class="expCollPos linkItem" >
            <span class="collapsed"></span>
        </span>
        <span class="expCollPos" >
            <span class="collapsed"></span>
        </span>
    </li>


    <li id="licategory_2">
    ... 
    </li>

</ul>

出於某種奇怪的原因,這3個spans(.expCollPos),前兩個與我無關,我正嘗試僅使用jQuery刪除它們。

我嘗試使用: $('.dyn li span.expCollPos:last-child').css("display", "none");

以及其他幾個-但這只是刪除了所有.expCollPos類。

難道我做錯了什么?

(我有一個必須編輯的代碼,它看起來太可怕了!javascript函數尚不清楚,並且CSS具有太多“!important”,以至於我找不到什么。)

您想隱藏除最后一個以外的所有內容,因此您必須說不像最后一個一樣

$('.dyn li').find('span.expCollPos:not(:last)').hide();

嘗試

$(".dyn li span.expCollPos").slice(-1).hide();

 $(".dyn li span.expCollPos").slice(-1).hide() 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <ul class="dyn makeLink" style="display: block;"> <li id="licategory_1"> <a href="/nfl-lines" title="" class="linkItem"> <strong>NFL</strong> </a> <span class="expCollPos" > <span class="collapsed">1</span> </span> <span class="expCollPos linkItem" > <span class="collapsed">2</span> </span> <span class="expCollPos" > <span class="collapsed">3</span> </span> </li> <li id="licategory_2"> </li> </ul> 

用這個

$('#licategory_1 span.expCollPos').eq(2).show();
$('body').find('.teads-inread:not(:last)').hide();

https://jsfiddle.net/mbrasil/n0reckgv/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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