簡體   English   中英

內容加載后如何調整jQuery手風琴的大小?

[英]How to resize jQuery accordion once content is loaded?

我有一個jQuery UI手風琴,它將最終包含幾種形式。 為了防止我的HTML文件瘋狂地變得不可讀,我想將每種形式扔到一個單獨的文件中並加載它們。 從另一個堆棧溢出問題/答案中,我得到了很好的解決方案:

...
<head>
  ...
  <script>
    $(function(){
      $("#form1").load("form1.html");
      $("#form2").load("form2.html");
      $("#form3").load("form3.html");
    });
  </script>
  ...
</head>

<body>
...
<div id="accordion">
  <h3>Form 1</h3><div id="form1"></div>
  <h3>Form 2</h3><div id="form2"></div>
  <h3>Form 3</h3><div id="form3"></div>
</div>
...
</body>

不幸的是,手風琴的大小似乎是在加載各種formN.html文件之前計算出來的。 加載這些文件后,如何強制它重新計算手風琴的大小?

您可以使用refresh方法。 由於您有3個獨立的Ajax請求,因此我將執行以下操作:

var f1=$("#form1").load("form1.html");
var f2=$("#form2").load("form2.html");
var f3=$("#form3").load("form3.html");

$.when(f1,f2,f3).then(function(){
   /* all forms loaded now we can refresh accordion */
   $('#accordion').accordion('refresh');
});

手風琴refresh()docs

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM