Rio*_*Rio 34 css jquery dialog jquery-ui modal-dialog
我正在寻找一个模式对话框(使用UI对话框)和独特的CSS,它与传统的对话框是分开的,所以本质上要有两个jQuery对话框,每个对话框看起来都不同.
例如,我设计了一个
<div id="dialog_style1" class="dialog1 hidden">One content</div>
Run Code Online (Sandbox Code Playgroud)
和另一个
<div id="dialog_style2" class="dialog2 hidden">Another content</div>
Run Code Online (Sandbox Code Playgroud)
不幸的是,我注意到使用单独的CSS来设置对话框的部分样式,例如
.dialog1 .ui-dialog-titlebar { display:none; }
.dialog2 .ui-dialog-titlebar { color:#aaa; }
Run Code Online (Sandbox Code Playgroud)
不起作用,因为.ui-dialog-titlebar没有类.dialog1,我不能做一个addClass没有闯入插件.
另一种方法是让一个元素body具有唯一的类/ id(取决于我想要的那个),但是这将排除在同一页面中同时具有两个对话框.
我怎样才能做到这一点?
Mor*_* T. 62
当前版本的对话框有"dialogClass"选项,您可以将其与您的id一起使用.例如,
$('foo').dialog({dialogClass:'dialog_style1'});
Run Code Online (Sandbox Code Playgroud)
然后CSS将是
.dialog_style1 {color:#aaa;}
Run Code Online (Sandbox Code Playgroud)
Rio*_*Rio 23
在Ajax中调用对话框后立即运行以下命令:
$(".ui-dialog-titlebar").hide();
$(".ui-dialog").addClass("customclass");
Run Code Online (Sandbox Code Playgroud)
这仅适用于打开的对话框,因此可以针对每个使用的对话框进行更改.
(这个快速回答基于Stack Overflow的另一个响应.)