Froala编辑器无法在当前光标位置插入内容问题求助
解决Froala编辑器光标位置插入文本的问题
你当前代码里的editor.html.insert()方法传入了true作为第二个参数,这个参数的作用是强制把内容追加到编辑器末尾,这就是文本没出现在光标位置的原因。
修正方案很简单:
- 保留你已有的
selection.save()和selection.restore()逻辑,这部分能确保光标位置被正确记录和恢复。 - 修改
insertVariable函数,去掉editor.html.insert()的第二个参数true(或者传入false),默认情况下该方法会在当前光标/选区位置插入内容。
修正后的完整代码:
var editor = new FroalaEditor('#docEditor', { events: { blur() { this.selection.save(); } }, }); function insertVariable(text) { editor.selection.restore(); editor.html.insert("->" + text + "<- "); }
另外,也可以使用Froala专门的选区插入方法editor.selection.insert(),效果一致,代码如下:
function insertVariable(text) { editor.selection.restore(); editor.selection.insert("->" + text + "<- "); }
内容的提问来源于stack exchange,提问作者Jay
相关产品推荐
相关产品推荐

