jquery - 动态设置 JQuery UI 模式对话框覆盖背景颜色

标签 jquery css jquery-ui modal-dialog

我想在模式对话框 loadui-widget-overlay 和属性 background-color
时更改页面包背景颜色 当我用 css 设置它时它工作正常

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

demo-with css

但我想动态更改它,因为我有一些模式对话框,我只想更改其中之一
我尝试使用jquery,但它不起作用

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

demo-with jquery

为什么?

最佳答案

DEMO

您的代码有问题

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

你设置backgroundwhite但是类 ui-widget-overlay 的元素当时 DOM 中不存在。

它适用于 CSS每当上课时ui-widget-overlay在 DOM 中 css 规则将起作用。

但是使用 .css()jQuery看跌inline styling因此,如果 DOM 中不存在该元素,则 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
});

关于jquery - 动态设置 JQuery UI 模式对话框覆盖背景颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19473821/

相关文章:

javascript - 想要在 jQuery Mobile 首次加载时显示对话框消息

Jquery ui 选项卡随着大量数据而变慢

javascript - jQuery 库有冲突

css - 为什么绝对定位的表格不根据其顶部/左侧/右侧/底部值计算宽度/高度?

css - 使图像适合 bootstrap 3 网格的高度

javascript - 将 jQuery UI 从 1.8 更新到 1.12 时,Catcomplete 小部件停止工作

javascript - jQuery UI Draggable/Sortable 查找您拖动的元素

javascript - 如何选择没有 Id 属性的元素?

javascript - 在所有先前的 ajax 调用完成后触发 ajax 调用

javascript - jQuery - 重置元素的高度不起作用