我有一个jQuery UI对话框,它是模态并显示带有弹跳效果。我使用的主题背景是条纹图像变暗。 第一次打开对话框时,条纹背景也会在弹跳效果期间覆盖对话框。跳出效果完成后,对话框将变为模态并显示在条纹背景前面。 在下一个开口处,对话框立即在背景前反弹。
如何让对话框立即出现在背景前?
答案 0 :(得分:2)
对话框包含在<div class="ui-effects-wrapper">
中,该createWrapper:function(f){if(f.parent().is(".ui-effects-wrapper")){return f.parent()}var g={width:f.outerWidth(true),"z-index":1005,height:f.outerHeight(true),"float":f.css("float")};f.wrap('<div class="ui-effects-wrapper" style="font-size:100%;border:none;margin:0;padding:0;z-index:1002"></div>');
在ui \ effects.core.js的createWrapper函数中生成
我在那里添加了一个参数“z-index = 1005”(只是为了确定;)。
所以在jquery-ui-1.7.2.custom.min.js中它现在看起来像这样
{{1}}
不确定这是否是最佳方式,但它确实有效。
答案 1 :(得分:1)
这听起来像是在动画之后才分配对话框的zIndex。在你的CSS中试试这个:
.ui-dialog {
z-index: 1002;
}
对话框通常有这个CSS类,而叠加层的zIndex通常为1000(至少在我目前使用的版本中)。如果这不起作用,请尝试找出(使用Firebug)仅在动画期间分配的其他类,并为这些类指定zIndex。