javascript - 编辑器文本大小调整问题

标签 javascript html css ace-editor

我是这样使用 Ace-Editor 的,

<div id="AceEditor"></div>

enter image description here

蓝色区域是我的编辑,

#AceEditor 
{ 
    position: absolute;
    top: 0;
    right: 300px;
    bottom: 420px;
    left: 0px;
    overflow: auto;
}

使用 Javascript,我已将 console log 区域配置为最小化,如下所示,

if($("#button").html() == "Minimize")
{
    $('#AceEditor').css("bottom",420);
}
else
{
    $('#AceEditor').css("bottom",0);
}

$("#button").click(function(){
    if($(this).html() == "Minimize"){
        $(this).html("Maximize");
        $('#AceEditor').css("bottom",0);
    }
    else{
        $(this).html("Minimize");
        $('#AceEditor').css("bottom",420);
    }
    $("#ConsoleDisplay, #ConsoleBar").slideToggle();
});

现在的问题是,当我按下 minimize 时,窗口会最小化,但文本光标不会移动到 420px 下方,如下图所示,

enter image description here

为了解决这个问题,

我尝试将 CSS AceEditor 描述更改为

#AceEditor 
{ 
    position: absolute;
    top: 0;
    right: 300px;
    bottom: 0px;
    left: 0px;
    overflow: auto;
}

现在虽然文本到达了页面底部,但当控制台日志最大化时,文本不会自动调整到新的底部像素

我该如何解决这个问题?

根据下面的答案,我试过了

if($("#button").html() == "Minimize")
{
  $('#AceEditor').css("bottom",420).resize();
}
else
{
  $('#AceEditor').css("bottom",0).resize();
}

也尝试过,

if($("#button").html() == "Minimize")
{
  $('#AceEditor').css("bottom",420);
  $('#AceEditor').resize();
}
else
{
  $('#AceEditor').css("bottom",0).resize();
  $('#AceEditor').resize();
}

但问题依然存在。

最佳答案

更改编辑器大小后,您应该调用editor.resize() 让编辑器更新其大小。

关于javascript - 编辑器文本大小调整问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23292421/

相关文章:

CSS 打包后搞砸了

html - Internet Explorer 11 无法识别 CSS3 特定属性

Javascript - HTML Canvas 上的 Gecko 边框半径自适应(CSS border-radius)

javascript - jquery比较img下面的高度和h2的高度

javascript 无法映射具有嵌套值的对象数组

html - 创建一个在 X 秒后开始的 CSS3 动画

javascript - 在antd 4中将初始值设置为动态形式

html - 当其他值随输入而变化时,元素会抖动/振动

javascript - 固定可滚动表格的标题

html - Bootstrap 菜单没有下推内容