我使用jQuery自动完成插件。
当我访问页面并开始输入自动填充文本框时 - 建议正确显示,如果我缩放(进或出)页面,并在同一个框中键入文本 - 建议div未正确定位。
自动完成在IE和FF中都能正常工作。
如果我第一次使用自动填充功能>>之前缩放页面 - 自动填充功能正常。
jQuery UI:1.9.0 Chrome:版本22.0.1229.94 m
我该如何解决这个问题?
答案 0 :(得分:1)
我刚刚面临同样的问题,并且正在寻找整个星期的解决方案。
您需要添加以下css来覆盖生成的position: relative
.ui-autocomplete {
position: absolute!important;
}
我希望我的回答会对某人有所帮助。
答案 1 :(得分:0)
帮助我的一种方法是记住上次打开的自动完成输入和写入事件处理函数,以便浏览器窗口的缩放在每次调整大小时手动刷新。同样适用于datepickers。您甚至可以通过设置一个小超时来保存一些刷新:
var lastOpenedInput;
myInput.on('autocompleteopen', function (event) {
lastOpenedInput = $(event.target);
}
$(window).on('resize', function () {
if (lastOpenedInput !== undefined) {
if (lastOpenedInput.autocomplete('widget').css('display') !== 'none') {
lastOpenedInput.autocomplete('search');
}
if (lastOpenedInput.datepicker('widget').css('display') !== 'none') {
lastOpenedInput.datepicker('hide');
setTimeout(function () {
lastOpenedInput.datepicker('show');
}, 1000);
}
}
});