Диалоговое окно JQuery UI - сохраняется после закрытия (только в Chrome) - PullRequest
0 голосов
/ 02 марта 2012

У меня есть диалоговое окно JQuery UI.В IE это работает нормально, но в Chrome это не так.Когда я закрываю диалоговое окно с помощью кнопки X, создается впечатление, что диалоговое окно все еще находится перед моей формой: невозможно нажать на кнопки, расположенные там, где отображалось диалоговое окно.

Это происходит со мной во всехмои диалоговые окна JQuery UI, неважно, обработаю ли я событие закрытия и удаляю или удаляю div.

Как и каждый раз, когда я закрываю диалог, прозрачный div остается на странице следующим образом:

<div class="ui-effects-wrapper" style="font-size: 100%; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; border-image: initial; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; width: 306px; float: none; position: absolute; z-index: 1000; top: 188px; left: 479px; bottom: auto; right: auto; height: 156px; overflow-x: hidden; overflow-y: hidden; background-position: initial initial; background-repeat: initial initial; "></div>

Вы знаете, что может быть причиной этого?Спасибо!

РЕДАКТИРОВАТЬ

Я обнаружил, что в IE элемент div, который остается после закрытия диалогового окна, имеет другие атрибуты стиля, которые остались в Chrome:

<div class="ui-effects-wrapper" style="z-index: 1000; border-bottom: medium none; position: absolute; border-left: medium none; padding-bottom: 0px; margin: 0px; padding-left: 0px; width: 307px; bottom: auto; padding-right: 0px; background: none transparent scroll repeat 0% 0%; float: none; height: 158px; font-size: 100%; overflow: hidden; border-top: medium none; top: 87px; right: auto; border-right: medium none; padding-top: 0px; left: 477px;" sizset="0" sizcache0641017125275892="0"/>

В IE он имеет:

background: none transparent scroll repeat 0% 0%;

, а в Chrome он имеет различные атрибуты:

background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent;

1 Ответ

2 голосов
/ 02 марта 2012

На мгновение я чуть не сказал: «забудь хром, это приложение только для IE». К счастью, теперь я могу сказать, чёрт возьми, этой больной чепухе.

Решением было прокомментировать show: «вслепую» . Надеюсь, это кому-нибудь поможет:

$("#divAlmostWentCrazy")
        .dialog({
            autoOpen: false,
            //show: "blind",
            hide: "explode",
            modal: true,
            title: "Title"          
            });
...