单击图像时,我必须创建一个对话框。问题是我在那里有一些很大的z索引(例如500),而ui对话框位于该元素的背面。
这是您需要登录的页面,用户:“ raducup”并通过:“ 1”。另一个问题是,当我单击关闭对话框时,该对象消失了。
这是单击图像时调用的函数:
function openItem(obiect){ $( obiect ).css('zIndex',9999); $( obiect ).dialog({ dialogClass: "no-close", modal: true, draggable: true, overlay: "background-color: red; opacity: 0.5", buttons: [ { text: "OK", click: function() { $( this ).dialog( "close" ); } } ] }); reparaZindex(); }
您没有告诉它,但是您正在使用jQuery UI 1.10。
在jQuery UI 1.10中,该zIndex选项已删除:
zIndex
删除了zIndex选项 与stack选项类似,对于适当的堆栈实现,zIndex选项是不必要的。z-index是在CSS中定义的,现在可以通过确保焦点对话框是其父级中的最后一个“堆栈”元素来控制堆栈。
删除了zIndex选项
与stack选项类似,对于适当的堆栈实现,zIndex选项是不必要的。z-index是在CSS中定义的,现在可以通过确保焦点对话框是其父级中的最后一个“堆栈”元素来控制堆栈。
您必须使用纯CSS来将对话框设置为“顶部”:
.ui-dialog { z-index: 1000 !important ;}
您需要按键!important来覆盖元素的默认样式;如果只需要为对话框设置对话框,请使用此dialogClass选项并设置其样式,这会影响所有对话框。
!important
dialogClass
如果需要模态对话框设置modal: true选项,请参阅docs:
modal: true
如果设置为true,则对话框将具有模式行为;否则,对话框将具有模式行为。页面上的其他项目将被禁用,即无法与之交互。模式对话框在对话框下方但在其他页面元素上方创建一个叠加层。
您需要使用较高的z-index设置模式叠加,才能使用:
.ui-front { z-index: 1000 !important; }
对于这个元素。