jQuery UI - эффект скрытия диалога в Firefox - мерцание - PullRequest
0 голосов
/ 01 октября 2009

У меня есть функция, которая вызывает .dialog для динамически генерируемого элемента. Код:

dialog: function(message){
    $('<div>').attr('innerHTML',message).dialog({
        draggable: false,
        width: 500,
        hide: 'puff',
        resizable: false,
        bgiframe: true,
        modal: true,
        buttons: {
            Ok: function() {
                $(this).dialog('close');
            }
        }
    });
};

(диалоговое окно является функцией объекта с именем Global)

Когда я закрываю диалог в IE, эффект работает как положено. Тем не менее, в Firefox эффект скрытия является всевозможным зубчатым и «легким». Я видел другие вопросы о «мерцании» пользовательского интерфейса в FF, но они не совсем подходили для моей ситуации.

Пожалуйста, дайте мне хорошие новости и скажите, что я делаю что-то не так, и Firefox поддерживает эти эффекты.

Это один из немногих случаев успешной работы IE, когда FF не удался.

1 Ответ

1 голос
/ 09 февраля 2010

У меня была похожая проблема с полосами прокрутки и видимостью. Это не ошибка FireFox. Я мог бы проследить это до строки в jQuery, где в функции css () он вызывает функцию swap ():

jQuery.swap( elem, props, getWH );

Пожалуйста, обратитесь к http://dev.jquery.com/ticket/5743, чтобы узнать, почему это происходит.

Функция обмена jQuery временно обновляет DOM, заставляя FireFox обновлять страницу. Возможно, вы захотите создать тестовый пример из вашего примера, затем закомментируйте вызов swap в jQuery, чтобы проверить это, и отправьте еще одну ошибку в систему заявок jQuery.

...