ace编辑器自动完成提示框的宽度自适应内容的方法
var stringWidth = function(fontSize, content) { var $span = $('<span></span>').hide().css('font-size', fontSize).text(content); var w = $span.appendTo('body').width(); $span.remove(); return w; }; function jhcAutoWidth(){ if($('.ace_autocomplete').is(":hidden"))return true; var jige=$('.ace_autocomplete').find('.ace_line').length; if(jige<1)return ''; var maxText=''; for(var i=0;i<jige;i++){ var nowText=$('.ace_autocomplete').find('.ace_line').eq(i).text(); if(nowText.length>maxText.length)maxText=nowText; } var jhcWidth=200+stringWidth('20',maxText); $('.ace_autocomplete').css('width',jhcWidth+'px'); } setInterval("jhcAutoWidth()","1000");
添加以上代码到 ace/ace.js的末端。