jQuery Autocomplete 小部件的默认行为是将结果列表放置在输入上方一个 z-index 级别,以便后者始终可见,但在我的情况下,这会产生不希望的效果,使文本输入元素蒙上阴影。
我尝试在 open 方法中将 z-index 值输入元素设置为至少比结果列表高一级,但没有太大成功:
open: function () {
setTimeout(function () {
$(this).css('zIndex', 10000);
}, 1);
},
close: function () {
$(this).css('zIndex', 0);
}
input 元素的 z-index 级别确实提升到 10000,而结果列表的 z-index 级别保持在级别 1,但 input 元素仍然出现在它下面。
有没有人知道为什么会这样?
结果列表和输入元素的位置属性分别设置为绝对和相对。这可能是原因吗?
最佳答案
您可以通过向样式表添加一个简单的规则来实现:
#your_input {
position: relative;
z-index: 10000;
}
.ui-autocomplete {
z-index: 9999 !important;
}
这应该可以完成所有工作,我在 Firebug 中对其进行了测试
关于jquery-ui - 将 jQuery 自动完成输入的 z-index 值设置为高于结果列表本身的级别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12090191/