Ace editor ACE代码编辑器-多个编辑器的自动高度
我正在尝试在同一个HTML页面上执行以下所有操作:Ace editor ACE代码编辑器-多个编辑器的自动高度,ace-editor,Ace Editor,我正在尝试在同一个HTML页面上执行以下所有操作: 在同一页面中放置多个ACE编辑器 不需要为每个编辑器定义自己的ID标记 不需要为每个编辑器定义自己的高度 每个编辑器的高度将根据其默认文本自动初始化 每个编辑器的高度将在添加文本时自动增加,在删除文本时自动降低 我使用这个代码:1。二, 我用这个代码:3。4.五, 每个代码本身都很好,但是当我尝试组合它们并在同一页面中创建多个编辑器时,高度是根据最后一个编辑器设置的 我应该如何修复代码 谢谢 我的代码: $(文档).ready(函数() {
$(文档).ready(函数()
{
$('.ace_editor')。每个(函数()
{
var editor=ace.edit(本);
编辑:setTheme(“ace/theme/monokai”);
editor.getSession().setMode(“ace/mode/c_cpp”);
var heightUpdateFunction=函数()
{
var newHeight=editor.getSession().getScreenLength()*editor.renderer.lineHeight;
setOptions({maxLines:Infinity});
editor.resize();
};
heightUpdateFunction();
在('change',heightUpdateFunction)上的编辑器.getSession();
});
});
#包括
usimg namespcse std;
int main()
{
对于(int i=0;i<10;i++)
printf(“%d”,i);
返回0;
}
对于(int i=0;i<10;i++)
printf(“%d”,i);
}
您使用的是全局编辑器变量,因此heightUpdateFunction始终在最后一个编辑器上工作
但最好使用内置的方法来调整大小
editor.setAutoScrollEditorIntoView(true);
editor.setOption("maxLines", 30);
好的,我发现了我的错误。
刚刚替换的:
$('.editor').height(newHeight.toString()+“px”);
与:
setOptions({maxLines:Infinity});
所有问题都解决了。(另请参见:)(您的问题中似乎缺少了一些单词:使用“backticks”来表示可能会被处理为HTML标记的内容。)您是对的,但我希望编辑器的高度是动态的,不受行数的限制。您可以将最大值设置为更大,但若用户实际添加的行数超过1000行,那个么将其设置为1000行以上会使编辑器速度太慢