2011-02-16 104 views
2

如何在頁面加載時關閉手風琴窗口小部件?這是我使用的代碼:jQuery Accordion在加載時關閉

//Accordion 
    $(".accordion").accordion({ 
     autoHeight: false, 
     navigation: true, 
     collapsible: true, 
     active: false 
    }); 

而且,它可能是不重要的,但是手風琴的div是對話框的div內。

+0

「手風琴divs在對話框裏面」 - 你是什麼意思?你能粘貼你的HTML嗎? jQuery手風琴實現具有語義要求。標記需要成對的標題和div:http://docs.jquery.com/UI/Accordion – 2011-02-16 15:35:20

回答

3

active選項被(根據docs)安排在頁面加載倒塌菜單(雖然它明確要求collapsible: true(你已經有)設置爲false應該

如果ISN已經在$(window).load()$(document).ready()中,那麼它需要被封裝在其中一個;如果它如此包裝,然後沒有演示(可能JS FiddleJS Bin?)很難建議可能發生什麼或出錯。

JavaScript的其餘部分(正在執行的.accordion()的調用之外?如果沒有,可能會有某處出現JS錯誤。可以肯定的是,通過JS Lint來運行它可能是值得的。

+0

代碼不在$(document).ready()中,但腳本位於主體的末尾,所以它沒關係吧?除此之外,所有的javascript都運行得非常完美。 – Yottagray 2011-02-16 15:46:00

0

索引值可以是布爾或整數

<script language="javascript" type="text/javascript"> 
    $(function() { 
     var activeIndex = parseInt($('#<%=AccordionIndexHidden.ClientID %>').val()); 
     if (activeIndex < 0) 
      activeIndex = false; 
     $("#accordion").accordion({ 
      autoHeight: false, 
      event: "mousedown", 
      active: activeIndex, 
      change: function (event, ui) { 
       var index = $(this).children('h3').index(ui.newHeader); 
       $('#<%=AccordionIndexHidden.ClientID %>').val(index); 
      } 
     }); 
    }); 


</script> 

記住要少開始指數大於0

<asp:HiddenField ID="AccordionIndexHidden" runat="server" Value="-1" /> 

FYI,隱藏字段是保持保存回發

之間開放的手風琴
相關問題