2011-01-13 22 views
3

我在我的網站上有一段jQuery手風琴,現在它似乎工作正常,直到我今天檢查它並被破壞。我幾周沒有觸及HTML。我已經完全重複了accordion documentation,似乎沒有任何改變,所以我不知道發生了什麼。jQuery手風琴在第一次點擊後中斷:當設置爲false時

我將手風琴的「活動」屬性設置爲「false」,以便手風琴不會在文檔加載時顯示活動部分。我也將「可摺疊」設置爲「真實」,就像指定的文檔一樣。只是爲了確定它不是頁面上的另一個元素,我創建了一個全新的頁面,只有最基本的手風琴元素,它仍然無法工作。

問題在於,在點擊第一個手風琴部分後,點擊任何其他部分都不起作用 - 您會被打開。我注意到,刪除「主動」屬性完全解決了這個問題,但是當然在文檔加載時打開了一個活動部分,這是我不想要的。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script> 
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script> 
<script> 
    $(document).ready(function() { 
    $("#accordion").accordion({active: false, alwaysOpen: true, autoHeight: false, collapsible: true}); 
    }); 
</script> 
</head> 
<body> 
<div id="accordion"> 

    <p><a href="#">1</a></p> 
    <div>this</div> 

    <p><a href="#">2</a></p> 
    <div>isn't</div> 

    <p><a href="#">3</a></p> 
    <div>working</div> 

    <p><a href="#">4</a></p> 
    <div>correctly</div> 

</div> 
</body> 
</html> 

我也注意到,如果我刪除活躍:假的,並留下可摺疊的:真的,我只能以「崩潰」的部分兩次,然後happens-的部分鎖定並停止摺疊相同的事情/開。

回答

3

好吧,我立刻看到了以下問題:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script> 
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script> 

如果不指定revision(在版本倒數第三位),您將自動獲得服務的最新版本,兩者的jQuery和jQuery UI的。那麼爲什麼它突然停止工作是因爲jQuery UI得到更新,並且對UI Accordion進行了更改。

解決此問題的最佳方法是指定修訂版。從當前版本(1.8.7)向下走,直到它爲您工作。例如,打開的alwaysOpen已被刪除或更改。您應該檢查docs並查看哪些選項可用。

此外,你可以試試這個,我得工作jsFiddle

$(function(){ 
    $("#accordion").accordion({ 
     active: false, 
     autoHeight: false, 
     collapsible: true 
    }); 
}); 
+0

謝謝,成功了!我會在下次記住版本號。 – Sean 2011-01-14 14:41:12

0

heightStyleType

控制手風琴和每個面板的高度。可能的值:

  • 「自動」:所有的面板將被設置爲最高的面板的高度。

  • 「填充」:根據手風琴的父母高度展開到可用高度。

  • 「content」:每個面板將只與其內容一樣高。

代碼示例:

$(function(){ 
    $("#accordion").accordion({ 
     active: false, 
     heightStyle: "content", 
     collapsible: true 
    }); 
}); 
相關問題