2014-02-20 46 views
0

我想,當我加載網頁第一次那麼<div class="col-md-9 column" id="c9" >將被激活,但後來我點擊切換按鈕,然後class="col-md-9 column" id="c9"去隱藏和
<div class="col-md-12 column" id="c12"會表演。我撥動代碼的工作,但是當我添加 這個代碼切換格顯示風格不行

if ($('#c9').is(':visible')) { 
    $('#c12').hide(); 
} 
    if ($('#c9').is(':hidden')) { 
    $('#c12').show(); 
} 

那麼這兩個DIV沒有顯示

<div class="col-md-3 column" id="area_toggle"> 

</div> 

<div class="col-md-9 column" id="c9" > 
    <div class="col-md-12 column" id="c12" style="display: none"> 

    </div> 
</div> 

<script> 
$("#menu-toggle").click(function() { 
    $("#area_toggle").toggle("slow") 
    $("#sidebar").toggle("slow"); 
      if ($('#c9').is(':visible')) { 
      $('#c12').hide(); 
     } 
      if ($('#c9').is(':hidden')) { 
      $('#c12').show(); 
     }     

}); 
</script> 

回答

0

你可以使用切換()來切換兩個元素的可見性而不是使用if ... else

$("#menu-toggle").click(function() { 
    $("#area_toggle").toggle("slow") 
    $("#sidebar").toggle("slow"); 
    $('#c9, #c12').toggle(); 
}); 
0

您正在使用C9進行比較,但該元素不觸發,你應該使用這樣的事情,而不是:

<div class="col-md-3 column" id="area_toggle"> 

</div> 

<div class="col-md-9 column" id="c9" > 
    <div class="col-md-12 column" id="c12" style="display: none"> 

    </div> 
</div> 

<script> 
$("#menu-toggle").click(function() { 
    $("#area_toggle").toggle("slow"); 
    $("#sidebar").toggle("slow"); 
      if ($('#c12').is(':visible')) { 
      $('#c12').hide(); 
     } else { 
      $('#c12').show(); 
     }     

}); 
</script> 
1

從代碼基於您的要求就是一個悖論,如果我理解正確的話想顯示#c9並隱藏#c12,然後單擊#area_toggle顯示#c12並隱藏#c9?這是不可能的,因爲c12是c9的孩子,這意味着當#c9被隱藏時,#c12也被隱藏。