2017-06-08 34 views
0

如何讓列表菜單在班級活動時顯示?

jQuery(document).ready(function() { 
 
    $(".list-menu").hide(); 
 
    $(".head-list a").click(function() { 
 
    $(".list-menu:visible").slideUp('slow'); 
 
    $(".head-list").removeClass('active-menu'); 
 
    $(this).parent().addClass('active-menu').next().slideDown('slow'); 
 
    return false; 
 
    }); 
 
    if ($(".list-menu ul li").hasClass('active')) { 
 
    $(".list-menu").show(); 
 
    } 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="head-list"><a href="">Puchase</a></div> 
 
<div class="list-menu"> 
 
    <ul> 
 
    <li class="<?php if($page == 'home'){ echo 'active';} ?>"><a href="customer_list.php">Purchase</a></li> 
 
    <li><a href="#">Purchase List</a></li> 
 
    <li><a href="#">Purchase3</a></li> 
 
    <li><a href="#">Purchase4</a></li> 
 
    <li><a href="#">Purchase5</a></li> 
 
    </ul> 
 
</div>

我想它顯示有activeul li類只有.list-menu

謝謝你的回答。

+0

什麼是你的代碼的問題?這似乎是工作。 –

回答

0

您需要爲多個li添加每個循環。 在你的代碼中它只考慮最後的li。 最後一個li沒有活動課。下面的 是每個循環與li的引用代碼。

$("list-menu ul li").each(function(index) { 
if($(index).hasClass('active')) 
{ 
    $("index").show(); 
} 
else 
{ 
$("index").hide(); 
} 
}); 
0

在這裏你可以用它

$page=basename($_SERVER['PHP_SELF']); 
<li class="menu-dropdown <?php 
if(basename($_SERVER['PHP_SELF'])=="home.php"){ echo 'active'; } ?> "> 

希望它會工作properlly

0

爲了方便我將使用第一隱藏.LIST菜單:

$(".list-menu").css('display', 'none'); 

然後代替這個:

if ($(".list-menu ul li").hasClass('active')) { 
     $(".list-menu").show(); 
} 

我會在一個循環中運行選擇檢查名爲「主動」爲這樣的類:

$(".list-menu ul").each(function(e){ 
    if($(this).hasClass('active')) { 
     $(".list-menu").css('display', 'block'); 
     $(this).show();    
     }else{ 
     $(this).hide(); 
     } 
});