JQuery Аккордеон "уничтожить" не работает - PullRequest
1 голос
/ 26 февраля 2009

Я использую jQuery Accordion и хотел бы сделать страницу для печати, на которой развернуты все "аккордеоны". Я нашел вариант .accordion ('destroy'). Однако, когда я его реализую, после нажатия кнопки уничтожения отображается только существующий видимый элемент div. Любая помощь будет оценена.

<link type="text/css" href="/js/theme/ui.all.css" rel="Stylesheet" />   
<script type="text/javascript" src="/js/jquery-ui-personalized-1.6rc6.js"></script>
<script type="text/javascript">
$(function(){
// Accordion
$("#accordion").accordion({ header: "h2", autoHeight: false, animated: false });

 //attach click hander to button        
$("#accordionKiller").click(function() { 
 //destroy the accordion
$("#accordion").accordion('destroy');
}); 
});
</script>


<a id="accordionKiller">Printable version</a> 

<div id="accordion">

<div>
    <h2><a href="#">Services</a></h2>
    <div class="services">

    </div>
</div>
</div>

1 Ответ

2 голосов
/ 26 февраля 2009

После того, как вы вызовете функцию разрушения аккордеона, вам нужно установить div содержимого, чтобы они были видны.

На основе страницы, на которую вы ссылались, я бы добавил перед строкой $ ("# accordion"). Accordion ('destroy'):

$(".ui-accordion-content").css("display", "block");
...