FCKeditor JavaScript API
FCKeditor offers a complete JavaScript API so you can interact with it once the editor is loaded and running.
Once loaded, the editor registers a global object called FCKeditorAPI. This object offers the entry point to interact with any editor instance placed in a page (you can have more than one).
NOTE: The FCKeditorAPI object will not be available during the page load. You need to wait for the editor to be loaded to use it. If you need to interact with the editor right after is has been loaded, use the "FCKeditor_OnComplete" function (see Events).
Retrieving an Editor Instance
- From out of an external script
When placing the editor in the page, you give it an "instance name". To retrieve it, you must simply call the FCKeditorAPI.GetInstance method.
Example:var oEditor = FCKeditorAPI.GetInstance('InstanceName') ;
- From out of a dialog of the editor
Call the InnerDialogLoaded to get the FCKObject.
Example:var oEditor = window.parent.InnerDialogLoaded().FCK ;
Both methods return the main FCKeditor object that gives the necessary bridge to interact with it. These are the most useful properties and methods of this object:
Properties:
- Name = ( string ) - the instance name.
- Status = ( integer ) - the editor status (loading status).
- EditorDocument = ( object ) - the DOM Document object for the editing area.
- EditorWindow = ( object ) - the DOM Window object for the editing area.
Methods:
- AttachToOnSelectionChange( functionPointer )
- Focus()
- GetXHTML( formatted )
- InsertElement( element )
- InsertElementAndGetIt( e )
- InsertHtml( html ) - inserts HTML in the current cursor position
- IsDirty() - checks if the content in the editor has been changed
- MakeEditable()
- ResetIsDirty() - resets the dirty state
- SetHTML( html ) - sets the contents of the editor. Note that when using this method, you will loose any listener that you may have previously registered on the editor.EditorDocument.
- GetHTML() - retrieves the edited html from the editor.
- SwitchEditMode()
- UpdateLinkedField()
Events
Once the editor loading phase is complete and it is ready to use (and interact with JavaScript), a standard function is called in the page that contains the editor, if the function is defined. This function must be named "FCKeditor_OnComplete" and receives the related editor instance as the parameter. Using it, you can execute any initial code that may interact with the editor. This is a declaration example: