Перед тем, как показать ваш модальный режим (или все, что сбрасывает текущий контекст редактирования), вам необходимо сохранить позицию редактора.Затем, прежде чем вставить HTML или что вам нужно, чтобы восстановить позицию редактирования.Вот немного Typescript из моего проекта Vue:
private saveEditorPosition() {
const sel = document.getSelection();
this.savedEditorPosition = [sel.focusNode, sel.focusOffset];
}
private restoreEditorPosition() {
this.focusEditor();
const sel = document.getSelection();
sel.collapse(this.savedEditorPosition[0], this.savedEditorPosition[1]);
}
private focusEditor() {
const content: any = document.getElementsByClassName('pell-content')[0];
content.focus();
}