我正在尝试向quill.js添加自定义功能("模块"),但似乎无法做到。这就是我需要的:
如果想要添加一个插入模板替换变量的按钮...说 像{{company}}这样的东西在光标的位置 编辑,目前可能与API - 我以为我能做到 它使用insertText但我似乎无法让它工作。
由于
答案 0 :(得分:8)
您应该能够使用insertText执行此操作,但您可能需要使用getSelection来获取光标位置。 getSelection返回的对象将具有索引和长度键。添加按钮和必要的单击处理程序将取决于实现者。注意焦点应该在使用focus调用getSelection之前返回给编辑器,或者只是将true传递给getSelection。
答案 1 :(得分:1)
我最终在一个非常相似的设置中做了什么:
let mergeFieldText = '{{company}}';
var selection = this._quill.getSelection(true);
this._quill.insertText(selection.index, mergeFieldText);
答案 2 :(得分:1)
此代码段是使用Quill.js的自定义按钮在光标位置添加符号。
首先声明羽毛笔变量:
var quill = new Quill('.editor', {
theme: 'snow'
});
通过单击按钮事件,在插入符号位置添加符号。
$('.symbols').click(function(){
quill.focus();
var symbol = $(this).html();
var caretPosition = quill.getSelection(true);
quill.insertText(caretPosition, symbol);
});