更改自动填充器的宽度

时间:2017-12-08 05:04:28

标签: javascript jquery css autocomplete ace-editor

我一直在使用ace auto-completor,我有一个案例,其中单词的长度比ace自动完成程序的默认宽度大得多。

enter image description here

我已经添加了一些CSS来将水平滚动引入自动完成,但是列表底部的单词正在被剪切。有没有人遇到类似的问题,并做了一些修复显示长名称?

1 个答案:

答案 0 :(得分:0)

我通过获取自动完成器中最长字符串的长度来解决问题,然后创建一个span来复制具有相同字体大小和字体系列的相同字符串,以便我可以确定字符串的宽度。

                $('body').append("<span id='longText'></span>");
                var longElement = $('body').find("#longText");

                longElement.text(longestValue); //longestValue containts the Long String
                var longeElementWidth = longElement.width();
                var autoCompleterWidth = $(".ace_autocomplete").width();

                if (longeElementWidth > autoCompleterWidth) {
                    var newAutoCompleteWidth = longeElementWidth + 15 + "px";

                    $(".ace_editor.ace_autocomplete").width(newAutoCompleteWidth);
                } else {
                    //Defaulting the width of the autocompleter to 350px
                    $(".ace_editor.ace_autocomplete").width("350px");
                }                        
                longElement.remove();