我一直在使用CKEditor 5进行以下工作:
var mySelection = editor.getSelection();
以获取所选文本并将其保存到例如数据库中。 我想知道是否有一种更简便的方法来将选定的文本保存到数据库,然后在恢复了文本之后提供一种将其设置为在编辑器窗口中自动选择的方法。
一种保存选择并在同一文本中再次设置选择的简便方法。 有插件或类似的东西吗?
致谢
答案 0 :(得分:1)
这是获取所选内容的方法。您应该像选择的那样获得选择,从中获得一个范围(.getFirstRange()
,使用for ( const item of range.getItems() )
遍历该范围中的所有项目,检查某个项目是否为文本节点({{1 }}),如果是,则将其数据添加到结果(item.is( 'textProxy' )
)中。这样,您就可以在选择内容中获取文本。
要在内容的一部分上还原某些内容,您必须将模型范围保存在数据库中,然后还原它并对其执行某些操作。可以,但是您需要确保内容不会在保存范围和内容之间改变(因此范围不会过时)。
我不确定您要实现什么功能,但看起来可以使用Markers