FCKeditor offers a complete JavaScript API ,FCKeditor的JSAPI

FCKeditor offers a complete JavaScript API ,FCKeditor的JSAPI

FCKeditor offers a complete JavaScript API so you can interact with it once the editor is loaded and running.

 

Retrieving an editor instance

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). When placing the editor in the page, you give it an "instance name". So, to retrieve it, you must simply call the FCKeditorAPI.GetInstance method. For example:

var oEditor = FCKeditorAPI.GetInstance('InstanceName') ;

 

The returned object

The GetInstance method returns the main FCKeditor object that gives the necessary bridge to interact with it. This is a list of properties and methods of this object:

 * Description = string
 * EditMode = Integer
 * Name = string
 * Status = Integer
 * function AttachToOnSelectionChange(functionPointer)
 * function CleanAndPaste(html)
 * function CreateElement(tag)
 * function CreateLink(url)
 * function ExecOnSelectionChange()  //Fires OnSelectionChange event in event manager
 * function ExecOnSelectionChangeTimer()
 * function ExecuteNamedCommand(commandName, commandParameter)
 * function ExecuteRedirectedNamedCommand(commandName, commandParameter)
 * function Focus()
 * function GetHTML(format)          // doesnt work. Use GetXHTML instead.
 * function GetNamedCommandState(commandName)
 * function GetNamedCommandValue(commandName)
 * function GetXHTML(format)
 * function InitializeBehaviors()
 * function InsertElement(element)
 * function InsertElementAndGetIt(e)
 * function InsertHtml(html)
 * function IsDirty();
 * function MakeEditable()
 * function OnDoubleClick(element)
 * function Paste()
 * function PasteAsPlainText()
 * function PasteFromWord()
 * function Preview()
 * function RegisterDoubleClickHandler(handlerFunction, tag)
 * function ResetIsDirty();
 * function SetHTML(html, forceWYSIWYG)
 * function SetStatus()
 * function ShowContextMenu(x, y)
 * function SwitchEditMode()
 * function UpdateLinkedField()

 

Events

Once the editor loading 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 makes the initial interaction with the editor. This is a declaration example:

function FCKeditor_OnComplete( editorInstance )
{
    alert( editorInstance.Name ) ;
}

Apart the above standard event, every FCKeditor instance has a "Event" object that can be used to listen for events to be fired. For example, the following code listens for the "OnSelectionChange" to execute custom code:

var counter = 0 ;
function DoSomething( editorInstance )
{
        window.document.title = editorInstance.Name + ' : ' + ( ++counter ) ;
}
function FCKeditor_OnComplete( editorInstance )
{
    editorInstance.Events.AttachEvent( 'OnSelectionChange', DoSomething ) ;
}

Note that every callback function receives the editor instance as a parameter.

The following is the list of events available:

  • OnSelectionChange: fired when the actual selection in the editor area changes (by selection I mean the cursor position too... it changes on key strokes). Note: In IE6, this event does not fire on every keystroke, but only on some random keystrokes. Handy!

  • OnAfterSetHTML: fired once the HTML is loaded in the editor (including when changing views).

  • OnStatusChange: fired when the editor status changes. The following constants are also available globally in the page: FCK_STATUS_NOTLOADED, FCK_STATUS_ACTIVE and FCK_STATUS_COMPLETE.

  • OnPaste: fired when something is pasted in the editor

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值