Похоже, ваша проблема в том, что после вызова dialog.destroy () пользовательский интерфейс jQuery возвращает элемент в его состояние перед инициализацией, но делает так, чтобы он отображал : нет установлено.
так:
remakeit = function(data,maximize,minimize)
{
$(maximize).show();
$(minimize).hide();
$(data).dialog("destroy");
$(data).show();
}
Я думаю, что проблемы, с которыми вы сталкиваетесь, связаны с тем, что разработчики пользовательского интерфейса jquery хотели, чтобы div диалога работал как div диалога, а не играл обе части - div диалога и обычный DOM div.
Итак, у вас есть два варианта:
1) Продолжайте так, как вы делали до сих пор (пытаясь использовать один и тот же div и как диалоговый div, и как обычный div DOM) - в этом случае вы должны играть тем, что делает пользовательский интерфейс jquery. Если вы говорите, что когда он «возвращает div в его состояние перед инициализацией», он присоединяется к концу тела (как «нижний колонтитул»), тогда в вашей функции remakeit после $ (data) .show (); оператор, добавить оператор для перемещения div на его первоначальное место:
remakeit = function(data,maximize,minimize)
{
$(maximize).show();
$(minimize).hide();
$(data).dialog("destroy");
$(data).appendTo("#originalDialogContainer");
$(data).show();
}
Где # originalDialogContainer " - это div, который изначально содержит ваш div:
<div id="originalDialogContainer">
<div class="theory">
...
</div>
</div>
Вот ссылка, объясняющая перемещение элементов DOM в jQuery.
http://www.elated.com/articles/jquery-removing-replacing-moving-elements/
2) Для начала имейте 2 «теоретических» дива - один будет для показа «теоретического» дива, когда он «свернут», а другой - «теоретический диалог» для отображения теоретического дива в виде диалога. Когда пользователь нажимает «максимизировать», вы скрываете обычный «теоретический» div и делаете $ (".istryDiv"). Dialog (); , а когда пользователь нажимает "минимизировать" внутри диалогового окна, вы будете уничтожить \ закрыть диалог и показать обычный раздел "теория".
Надеюсь, это поможет ...