tinymce失去了插入位置

hea*_*eal 6 javascript tinymce

我有一个tinymce自定义按钮,可以在textarea旁边切换表情符号div.

onclick : function() {
  ed.focus();
  $('#my-input').toggleClass('with-emoticons');
  $('#emoticons').toggleClass('emo-visible');
}
Run Code Online (Sandbox Code Playgroud)

当我点击按钮时,表情符号div显示,但插入符号从我的文本的结尾开始.

如何在单击自定义按钮时保留插入符号位置?

Tha*_*ama 6

看起来你需要使用书签

onclick : function() {
  ed.focus();

  var bookmark = ed.selection.getBookmark();

  $('#my-input').toggleClass('with-emoticons');
  $('#emoticons').toggleClass('emo-visible');

  ed.selection.moveToBookmark(bookmark); 
}
Run Code Online (Sandbox Code Playgroud)

这里使用的书签类型是一个html书签,它代表编辑器html中不可见的范围.getBookmark函数也能够生成非html书签.为此您可以致电 ed.selection.getBookmark(2, true);有关tinymce书签的更多信息,请查看文档.