有没有办法只删除CKEditor撤消堆栈中的最后一个快照,或者我可以用另一个替换它。我应该自己实现它吗?
示例:
第1步
步骤2 - 应删除并替换为步骤3(在给定情况下)
第3步 - 应该成为第2步
只有在发生特殊事件时才能使用此功能。
答案 0 :(得分:4)
如果撤消快照是用户操作的结果,请按照以下方式进行:
CKEDITOR.instances.editor.fire( 'lockSnapshot' )
CKEDITOR.instances.editor.fire( 'unlockSnapshot' )
当然,您必须检测正在发生的事情并在正确的时间发起正确的事件。
如果内容的更改是通过代码完成的,那么editor#updateSnapshot
事件会更好:
function() {
editor.fire( 'saveSnapshot' );
editor.document.body.append(...);
// Makes new changes following the last undo snapshot a part of it.
editor.fire( 'updateSnapshot' );
..
}