2013-07-04 26 views
1

我試圖用jQuery的加載函數將div轉換爲jQuery手風琴。如何將jQuery手風琴應用於通過ajax加載的div

我不完全確定我做錯了什麼。我首先將nav.html加載到#nav,然後我嘗試使#nav變成jQuery手風琴。 #nav加載正確,但我似乎無法將其製作成手風琴。

的Index.html

<!DOCTYPE HTML> 
<html> 
<head> 
    <script src="http://code.jquery.com/jquery-1.9.1.js"></script> 
    <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script> 
    <script> 
     $(document).ready(function(){ 
      $("#nav").load("nav.html"); 
     }); 
     $(document).ready(function(){ 
      $("#accordionNav").accordion({ 
       heightStyle: "content", 
       collapsible: true, 
       active: 1 
      }); 
     }); 
    </script> 
</head> 
<body> 
    <div id="nav"></div> 
</body> 
</html> 

nav.html:

<nav> 
    <div id="accordionNav"> 
    <h3>Surveys</h3> 
     <div class="accordionDropDown"> 
      <ul id="surveys"> 
       <li><a href='Nutritional_Supplement.html'>Nutritional Supplement</a></li> 
       <li><a href='Probiotics.html'>Probiotics</a></li> 
       <li><a href='.html'>Fatty Acids</a></li> 
       <li><a href='Trace_Minerals.html'>Trace Minerals</a></li> 
       <li><a href='Fibre_Supplement.html'>Fibre Supplement</a></li> 
       <li><a href='Bowel_Supplement.html'>Bowel Supplement</a></li> 
       <li><a href='Liver.html'>Liver</a></li> 
       <li><a href='Adrenal_Support.html'>Adrenal Support</a></li> 
       <li><a href='Digestive_Enzymes.html'>Digestive Enzymes</a></li> 
       <li><a href='Cleanse.html'>Cleanse</a></li> 
       <li><a href='Immune_Supplement.html'>Immune Supplement</a></li> 
       <li><a href='Yeast.html'>Yeast</a></li> 
       <li><a href='Stressed.html'>Stressed</a></li> 
       <li><a href='Joints.html'>Joints</a></li> 
      </ul> 
     </div> 
    </div> 
</nav> 

回答

1

使用​​方法的回調函數:

$(document).ready(function() { 
    $("#nav").load("nav.html", function() { 
     $("#accordionNav").accordion({ 
      heightStyle: "content", 
      collapsible: true, 
      active: 1 
     }); 
    }); 
}); 
+0

傻了我。謝謝:) – user1991252

+0

是不是默認設置? –

+0

@php_purest你在說什麼默認設置,手風琴插件?因爲不,它不是。如果你談論'load()'ajax方法,那麼我不明白你的評論?! –

0

你應該叫手風琴功能一旦與.load完成()因爲當前都是異步調用並調用.accordion()func這個頁面上可能不存在html。

jQuery(document).ready(function() { 
    jQuery("#nav").load("nav.html", function() { 
     jQuery("#accordionNav").accordion({ 
      heightStyle: "content", 
      collapsible: true, 
      active: 1 
     }); 
    }); 
}); 
+0

是不是你做自然頁面加載時的默認設置? –