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的末端。
|