本文概述
- 在自定义位置插入文本
- 在光标所在的位置插入文本
在自定义位置插入文本 要在自定义位置的编辑器中插入一些文本, 你需要在编辑器的session对象中访问insert方法。此方法需要2个参数, 第一个是具有2个属性的行和列的对象, 这些值是整数, 用于指定应插入文本的位置(行是-1行的编号, 列是字符的数量放置文本的右侧), 请参见以下示例:
// Create an editorvar editor = ace.edit("editorID");
editor.setTheme("ace/theme/monokai");
editor.getSession().setMode("ace/mode/javascript");
// Add some text in a custom positionvar customPosition = {row: 0, column: 0};
var text = "This text has been dinamically inserted";
editor.session.insert(customPosition , text);
请注意, 以与数组相同的方式, 编辑器中的位置(行和列)从0开始(行1将为行0)。
在光标所在的位置插入文本 在此示例中, 我们要在编辑器中插入插入符号(光标)所在的确切文本, 该文本应位于第4行中的双引号内:
文章图片
为此, 我们将使用editor.session对象的相同方法插入, 但是第一个参数不会由你生成, 而是由另一个方法生成。你可以使用编辑器的getCursorPosition方法检索光标的位置, 该方法返回一个具有2个属性(行和列)的对象。要在光标所在的位置插入一些文本, 请在editor.session的insert方法中将第一个参数提供给getCursorPosition检索到的对象, 并将第二个参数提供给你要插入的文本:
// Retrieve cursor position// In the example would be an object like// {row: 3, column: 18}var cursorPosition = editor.getCursorPosition();
// Insert text (second argument) with given positioneditor.session.insert(cursorPosition, "#fff");
那应该在编辑器的双引号中插入字符串#fff:
文章图片
【如何使用ACE Editor将文本插入特定位置】编码愉快!
推荐阅读
- 如何在Java中操作KeePass数据库(kdbx)
- 如何在Laravel 5.4中实现PHP调试栏
- Linux基础_李孟_新浪博客
- 某团面试题(hashCode 的值是怎么生成的(对象内存地址吗?))
- python实现两台不同主机之间进行通信(客户端和服务端)——Socket
- vSphere7.0集群搭建项目实施笔记1---实施计划
- CentOS配置mailx通过465端口发送qq邮件
- 性能工具之15个常用的Linux文件系统命令
- Python降低XGBoost 过度拟合的多种方法