2017-04-25 57 views
0

我想根據類別名稱,隱藏和顯示DIV ID =「brandmenu」在陣列上存在.. 如果數組包含類別名稱,則表明這個div否則隱藏這個div 。匹配類別名稱與jQuery陣列和隱藏特定的div

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 
    <script> 
    var brandmenu = $("#brandmenu"); 
    var catName = "Activewear"; 
    var myarr = ["Activewear", "Anvil", "Bulwark", "CornerStone", "District", "District Made", "Fruit of the Loom", "Gildan", "Hanes", "Jerzees", "Port & Company", "Port Authority", "Precious Cargo", "Red House", "Red Kap", "Russell Outdoors", "Sport-Tek"]; 
    var arraycontainsturtles = (myarr.indexOf(catName) > -1); 
    if(arraycontainsturtles == true) { 
     brandmenu.show(); 
    } else { 
     brandmenu.hide(); 
    } 
    </script> 
    <div id="brandmenu" style="display:none;"> 
     content to hide and show 
    </div> 
+0

什麼是你的問題? –

+0

我想在特定類別的網頁上顯示div id =「brandmenu」。就像{{category.name}}是CornerStone。當我轉到CornerStone類別時,div應該是可見的。 –

回答

0

首先,你需要遍歷a標籤每li然後查找HTML。在你的數組中找到這個詞。然後顯示/隱藏它。

var brandmenu = $("#brandmenu"); 
    var myarr = ["Anvil", "Bulwark", "CornerStone", "District", "District Made", "Fruit of the Loom", "Gildan", "Hanes", "Jerzees", "Port & Company", "Port Authority", "Precious Cargo", "Red House", "Red Kap", "Russell Outdoors", "Sport-Tek"]; 

    $('.navList > li').each(function(index,val){ 
     var catName = $(this).find('a').html(); 
     var arraycontainsturtles = (myarr.indexOf(catName) > -1); 
     if(arraycontainsturtles == true) { 
      $(this).show(); 
      } else { 
      $(this).hide(); 
     } 
    }); 

Fiddle

+0

var catName =「{{. category.name}}」; //category.name是動態值.. bigcommerce stencil變量..我想我是在正確的軌道上。 :) –