I have a page with two editable areas that are both using the same shared toolbar. This page has the ability to toggle between editable & just normal displaying. I call .destroy() on each editor, which puts the updated content into the page and kills the toolbar. However, when toggling back into edit mode, I call CKEDITOR.replace() again which creates the editor but the toolbar does not come back.
first creation:
toggle out of edit mode:
toggle back into edit mode:
Why doesnt the toolbar re-create itself? Am I doing something wrong?
first creation:
editor = CKEDITOR.replace( 'editor1', { removePlugins : 'maximize', sharedSpaces : { top: 'toolbarSpace' } });
toggle out of edit mode:
if ( editor ){ editor.destroy(); editor = null; }
toggle back into edit mode:
editor = CKEDITOR.replace( 'editor1', { removePlugins : 'maximize', sharedSpaces : { top: 'toolbarSpace' } });
Why doesnt the toolbar re-create itself? Am I doing something wrong?
Re: Shared Toolbars & .destroy()
Is there a solution to this?
I experience the same problem, and can't find a solution.
Re: Shared Toolbars & .destroy()
Re: Shared Toolbars & .destroy()
FF3.6 & IE8
Re: Shared Toolbars & .destroy()
OK, I've found a solution. The above code alone doesn't seem to work for CKEditor 3.2. According to the source code, only the first time you create an editor instance of a given name will the toolbar be allowed to be visible. This basically means that any time you call CKEDITOR.replace() on an element or id that you've previously used, CKEditor adds "display: none;" to the SPAN tag it generates to act as a container for the shared toolbar (this SPAN has the class "cke_shared"). To resolve this issue, simply set the span back to its normal display mode.
I'm using jQuery so for me the fix is to use the following code when creating an editor instance: