2013-06-13 100 views
0

我有Bootstrap佈局與span7span5(在span12內)。我想隱藏span7和展開span5作爲span12當一個按鈕點擊平滑動畫。同樣,按下sam按鈕,span7和span5都應顯示。如何實現此目的?內部內容也應該根據父跨度靈活。如何當span7和span5顯示隱藏在引導時動畫

<div id="summary-content" class="contentbar-main" style="display:none;"> 
            <div class="container-fluid"> 
             <div class="row-fluid"> 
              <div class="span12"> 
               <div class="row-fluid no-space"> 
                <div class="span7" id="sidebarid"> 
                 <div class="myh4">My Summary</div> 
                 <br> 
                 <div id="summaryTableId"></div> 
                </div> 
                <div class="span5" id="contentbarid"> 
                 <div class="row-fluid"> 
                  <div class="span12"> 
                   <div> 
                    <span class="summary-left-hide-arrow" id="toggle-button"></span> 
                    <span class="myh4">Map</span> 
                   </div> 
                    <br> 
                   <div id="#map-canvas" style="width:100%;height:400px;"></div> 
                  </div> 
                 </div> 
                 <div class="row-fluid"> 
                  <div class="span12"> 
                   <br> 
                   <div class="myh4">Time Sheet</div><br> 
                   <div id="newTableId"></div> 
                  </div> 
                 </div> 
                </div> 
               </div> 
              </div> 
             </div> 
            </div> 

回答

3

假設這是一個按鈕,做了的HTML:

<a href="#" id="hideSpan">Hide Span</a> 

那麼下面的jQuery應該做的伎倆(把它放在你的document.ready函數中)

$('#hideSpan').click(function() { 
    $('#sidebarid').removeclass('span7').addClass('hidden'); 
    $('#contentbarid').removeclass('span5').addClass('span12'); 
}); 

您需要將下面的CSS添加到您的頁面太

.hidden { display: none; } 

UPDATE:忽略前面例子中的添加和刪除類,這應該提供一個平滑的動畫。

$('#hideSpan').click(function() { 
    $('#sidebarid').hide(1000); 
    $('#contentbarid').animate({width: '100%'}, 1000); 
}); 
+0

Yes.It工作正常。當側欄隱藏時,我需要平滑的動畫,同一時間內容欄可以順利地展開。我嘗試過這樣,但是隨機動畫。('#sidebarid')。removeClass('span7')。addClass('hidden',1000); $('#contentbarid')。removeClass('span5')。addClass('span12',1000); – Ramprasad

+0

嗯,我沒有看到問題中的平滑動畫位。爲了隱藏'$('#sidebarid')隱藏(1000)''而擁有平滑的動畫是非常容易的,但是擴展爲平滑動畫會有點棘手。我認爲'$('#contentbarid')。animate({width:'100%'},1000);'會做。 – Andrew

+0

$( '#sidebarid')removeClass( 'span7')addClass( '隱藏')動畫({寬度: '100%'},1000)。。。; $( '#contentbarid')removeClass( 'span5')addClass( 'span12')動畫({寬度: '100%'},1000)。。。;我試過這樣。但不行。我認爲隱藏一個跨度並同時擴展一個apn是非常棘手的。 – Ramprasad