为什么jQuery UI 1.10删除了jquery对话框zIndex选项?

iva*_*ain 18 jquery dialog z-index

我发现最新版本的jQuery UI(1.10)删除了该zIndex选项.它在jQuery网站上得到了证实.

这真让我震惊.请想一想:

当我们有一个jqgrid,并使用editrow()addrow()打开一个编辑对话框来编辑某些东西时,里面有很多字段,其中一些有自定义的事件,比如,当你点击它时,它会显示另一个jQuery对话框来显示一些树视图项目可供选择.

在jQuery UI 1.9(包含)下,您可以将jQuery对话框的zIndex选项设置为大于jqgrid编辑对话框(jqgrid编辑对话框支持集zIndex),因此jQuery对话框始终可用,可以查看和使用.

在jQuery UI 1.10下,您无法设置zIndex,因此jQuery对话框始终位于jqgrid编辑对话框的后面.

我觉得这样的场景非常普遍.

为什么jQuery UI 1.10删除了jQuery对话框zIndex选项?z-index如果有多个对话框,如何控制订单?

小智 26

我想我理解你的问题.jQuery UI对话框的CSS z-index不够高,无法始终显示在您的内容之上.这是一个快速修复:

/* A class used by the jQuery UI CSS framework for their dialogs. */
.ui-front {
    z-index:1000000 !important; /* The default is 100. !important overrides the default. */
}
Run Code Online (Sandbox Code Playgroud)

  • 不适合我.但这确实...... .ui-dialog {z-index:999!important; } (2认同)

Mar*_*coK 6

只需从jQuery UI 1.10中读取更改日志(以及已为其提交的错误):

删除了zIndex选项

与stack选项类似,zIndex选项对于正确的堆栈实现是不必要的.z-index在CSS中定义,现在通过确保聚焦对话框是其父级中的最后一个"堆叠"元素来控制堆叠.

换句话说:您应该使用zIndex选项将属性堆叠元素而不是"黑客"堆叠.

  • 但是使用选项zIndex是一种控制z顺序的一种非常简单的方法,我不认为它是一种"黑客方式".如何堆叠元素属性?当有很多对象时,聚焦对话框并不总是其父对象中的最后一个堆叠元素. (6认同)
  • 有没有人使用没有zIndex的绝对定位元素的"正确堆叠实现"的例子? (4认同)