css - jQuery UI 自动完成未平仓头寸

标签 css jquery-ui jquery-ui-autocomplete

我什至不知道如何描述问题,我在我的 web 应用程序上使用 jQuery UI 自动完成,并且由于某种原因,当我第一次加载页面时输入输入, ui-widget-content 打开在错误的位置,如我的以下图片所示。 我认为这是一个 CSS 问题,但无法解决它应该是哪个属性。 在这两个图像上,我使用相同的精确控制。 焦点移出并返回到文本框后,它会在正确的位置自行解析(在两个示例中)

The position is a little left of the text box

The position is around 100px at the bottom of the text box

更新

再次查看开发工具后,我发现了差异。 在第一个示例中,当我第一次打开 ui-autocomplete 时,“left”属性填充值 524.5px,第二次填充值 533px(然后它显示在正确的位置)。

在第二个示例中,它是相同的,但具有“top”属性,-140px 和 199px(此控件位于对话框内)。 这些属性位于 element.style 上(我相信创建控件时它是自动的)

我相信提到的 px 代表自动完成文本框在正文中的偏移量,但是我如何在第一次运行时将其修复为正确的 px ?

**** 仅在 Chrome 浏览器上发生 ****

我用于创建控件的代码是:

$('#service').autocomplete({
        source: function (request, response) {

        },
        select: function (event, ui) {
            event.preventDefault();
            $(this).val(ui.item.label);
        },
        minLength: 2,
    }).data("ui-autocomplete")._renderItem = function (ul, item) {
        var $a = $("<a></a>").text(item.label);
        highlightText(this.term, $a); //THE HIGHLIGHT TEXT FUNCTION I USE
        return $("<li></li>").append($a).appendTo(ul);
    };

最佳答案

这是一个 jQueryUI 错误。这是fixed在 1.9.1 版本中,但如果您必须使用旧版本,只需将其应用于您的 CSS:

.ui-autocomplete {
    position: absolute;
    top: 0;
    cursor: default;
}

关于css - jQuery UI 自动完成未平仓头寸,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25841416/

相关文章:

jquery - 日期范围选择器问题 : rp. 查找 ('.range-end' ).datepicker ('getDate' ) 返回 null

javascript - Jquery自动完成键按下显示标签名称而不是值?

jquery - 将选定的值从自动完成传递到另一个自动完成作为查询字符串

javascript - Angular 6 - 为不同的布局提供不同的脚本和样式

javascript - 我如何让 JQuery 语句等到它完成后再继续?>

基于 Javascript 的 HTML/CSS Lint

javascript - 选择/更改月份/年份后的 jQuery UI Datepicker

javascript - jQuery 自动完成 mustmatch 没有任何效果

html - 表单标签占用的空间超出其需要

javascript - Chrome 移动摄像头 100% 屏幕尺寸?