Могу ли я установить пользовательский класс ui-widget-overlay при открытии диалогового окна jQuery UI? - PullRequest
0 голосов
/ 29 декабря 2011

В диалоговом окне пользовательского интерфейса jQuery есть опция dialogClass, что приятно, поскольку диалоговое окно вложено непосредственно в документ <body>.Однако при установке опции modal на true div-интерфейс ui-widget-overlay также отображается непосредственно внутри тела (как родственный элемент div диалога).

Есть ли способ применить overlayClass при открытии диалогового окна jQuery UI с modal: true?

Я знаю, что мы можем применить пользовательский CSS к оверлею, дав<body> атрибут класса или переопределение класса .ui-widget-overlay напрямую.Я ищу решение, которое бы дало определение CSS, как следующая работа:

.my-custom-class.ui-widget-overlay {
    opacity: .5;
}

Ответы [ 2 ]

3 голосов
/ 05 ноября 2012

На самом деле существует очень простой способ сделать это с помощью CSS (если вы загрузили библиотеку jQuery UI). Должна быть таблица стилей jquery, озаглавленная "jqGrid-custom.css"

Просто перейдите в раздел оверлеев и настройте эту строку:

.ui-widget-overlay { background: #aaaaaa url(/img/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity:.9;filter:Alpha(Opacity=90); } 
2 голосов
/ 30 декабря 2011

Нет варианта для этого.Глядя на источник, там тоже нет простого способа подшутить над ним.Для справки, вот что добавляет класс:

    var $el = (this.oldInstances.pop() || $('<div></div>').addClass('ui-widget-overlay'))
        .appendTo(document.body)
        .css({
            width: this.width(),
            height: this.height()
        });

Вероятно, вам лучше всего настроить / обновить ваш CSS, чтобы переопределить / расширить стили по умолчанию.

...