Ckedior:Redo和undo插件没有重置它的堆栈

时间:2015-06-26 07:34:25

标签: javascript php jquery ajax ckeditor

我正在使用Ckeditor编辑我的HTML页面,我正在使用ajax将HTML加载到Ckeditor中,这非常合适。 但是在将页面加载到Ckeditor时,我想重置Ckeditor的重做 - 撤消堆栈,

CKEDITOR.instances.editor.resetUndo();

使用上面的语句,我的撤销和重做按钮将被禁用,直到我的下一次编辑,但旧操作的堆栈未被重置。

重置功能类似于

   a.resetUndo = function() {
        b.reset();
        a.fire("saveSnapshot")
    };
    reset: function()
 {

    this.lastKeystroke = 0;

    this.snapshots = [];
    this.index = -1;
    this.limit = this.editor.config.undoStackSize || 20;
    this.currentImage = null;
    this.hasRedo = this.hasUndo = !1;
    this.locked = null;
    this.resetType();
},

this.snapshots是我要重置的堆栈。

感谢任何帮助..

1 个答案:

答案 0 :(得分:0)

我已经想出了这样做的中途 你可以设法通过重置CKEditor的对象来重置CKEDITOR的重做 - 撤消堆栈, 为此,

  1. 使用函数创建CKE对象,意味着编写脚本 CKEDITOR.replace();成功能。
  2. 使用CKEDITOR.instances.editor1.destroy()删除旧CKeditor对象表单内存。
  3. 从内存中删除对象后,它将重置重做撤消堆栈。

    我知道它不是解决这个问题的正确方法,但它会有所帮助(希望如此)。