1

モーダル ダイアログの loadui-widget-overlay でページの背景色を変更し、background-color
css で設定するとプロパティが正常に動作するように変更したい

.ui-widget-overlay {
   background-color: white;
}

CSS を使用したデモ

しかし、動的に変更したいのは、いくつかのモーダル ダイアログがあり、それを変更したいからです

$('.ui-widget-overlay').css('background', 'white');

jquery を使用したデモ

なぜ?

4

2 に答える 2

6

デモ

コードの問題

$('.ui-widget-overlay').css('background', 'white');

に設定backgroundしましwhiteたが、クラスを持つ要素ui-widget-overlayはその時点で DOM に存在しません。

CSSクラス ui-widget-overlayがDOM cssルールにあるときはいつでも動作します。

ただし、入力を使用.css()すると、要素がjQueryDOMinline stylingに存在しない場合はinline styling追加できません。

解決

ダイアログが開いた後、クラスが存在するため、このコードを実行できますui-widget-overlay

作業コード

$("#dialogDiv").dialog({
    autoOpen: false,
    modal: true
});
$("#btn").click(function () {
    $("#dialogDiv").dialog('open');
    $('.ui-widget-overlay').css('background', 'white'); //write background color change code here
});
于 2013-10-20T04:06:10.167 に答える
2

http://jsfiddle.net/dmGe5/2/

ui-widget-overlayあなたのコードのその時点では存在しないので、移動しました。

于 2013-10-20T04:07:04.217 に答える