簡體   English   中英

jquery - 隱藏除一個類之外的所有div

[英]jquery - hide all div except one class

這是我的代碼:

  <div id="principal" class="classxx">
    <div class="class001 cat2 blabla">
      <div class="class002">
        <div class="class003"></div>
        <div class="class004"></div>
        <div class="class005"></div>
      </div>
    </div>
    <div class="class001 cat3 blabla">
      <div class="class002">
        <div class="class003"></div>
        <div class="class004"></div>
        <div class="class005"></div>
      </div>
    </div>
    <div class="class001 cat1 blabla">
      <div class="class002">
        <div class="class003"></div>
        <div class="class004"></div>
        <div class="class005"></div>
      </div>
    </div>
  </div>

我需要一個像以下的功能:

function showOnlyCat(className){}

如果我調用showOnlyCat('cat3')我想只看到所有具有'cat3'類的DIV(每個DIV有多個類),當然它的子節點

而且我還需要一個showAllCat()來顯示所有cat1,cat2,cat3 ...... DIV

非常感謝您的幫助

嘗試這個 :

function showOnlyCat(cat) {
    $('div').not('.'+cat).hide();
}
function showAllCat() {
    $('div').show();
}

 $('div.cat').siblings().show(); 

並且將顯示具有上述內容的所有兄弟姐妹。

function showOnlyCat(cat){

 $('.class001').hide();
 $('.'+ cat).show();
}

function showAllCat(){
  $('.class001').show();
}

當class001是對的時候就是這樣。

function showOnlyCat(className) {
  $('div').not('.' + className).hide();
}

function showAllCat() {
  for (i=1;i<=NUM_CAT;i++) {
    $('.cat' + i).show();
  }
}

真的可以用一個功能來實現

function toggleVisibility(className){
     if(typeof(className)!='undefined' && className != null){
        $("div").hide();         
        $("div."+className).show();
     }
   else
        $("div").show();
}

//僅顯示class001 toggleVisibilty('class001'); //顯示所有toggleVisibility();

暫無
暫無

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

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