CKEditor 5 сохранить выбранный текст и установить его снова, как выбранный после восстановления содержимого
Я работал с CKEditor 5 с:
var mySelection = editor.getSelection();
например, чтобы получить выделенный текст и сохранить его в базе данных. Я хотел знать, есть ли более простой способ сохранить выделенный текст в базе данных, а затем после восстановления текста установить его автоматически в окне редактора.
Простой способ сохранить выделение и снова установить выделение в том же тексте. Есть ли плагин или что-то подобное?
С уважением
1 ответ
Это способ получить материал, который выбран. Вы должны получить выбор, как вы сделали, получить диапазон от него (
.getFirstRange()
), используйтеfor ( const item of range.getItems() )
чтобы перебрать все элементы в диапазоне, проверьте, является ли элемент текстовым узлом (item.is( 'textProxy' )
) и, если это так, добавьте данные к результату (result = result + item.data
). Таким образом, вы можете получить текст внутри выделения.Чтобы что-то восстановить в части контента, вам нужно сохранить модельный ряд в базе данных, а затем восстановить его и что-то с ним сделать. Это нормально, но вам нужно будет гарантировать, что содержимое не будет меняться между диапазоном сохранения и содержимым (поэтому диапазон не устареет).
Я не уверен, какую функцию вы пытаетесь реализовать, но похоже, что вы могли бы использовать маркеры