FCKEDITOR 的高级功能和常见问题的解决方法
更新时间:2010年01月26日 11:42:48 作者:
FCKeditor是一个专门使用在网页上属于开放源代码的所见即所得文字编辑器。它志于轻量化,不需要太复杂的安装步骤即可使用。
它可和PHP、JavaScript、ASP、ASP.NET、ColdFusion、Java、以及ABAP等不同的编程语言相结合。FCK的配置和使用都很简单,但是默认的配置不能满足所有的需求,所以我们需要了解一些FCK的高级功能。
获取FCK的实例
FCKeditorAPI是FCKeditor加载后注册的一个全局对象,利用它我们就可以完成对编辑器的各种操作。
在当前页获得 FCK 编辑器实例:
var Editor = FCKeditorAPI.GetInstance('InstanceName');
从 FCK 编辑器的弹出窗口中获得 FCK 编辑器实例:
var Editor = window.parent.InnerDialogLoaded().FCK;
从框架页面的子框架中获得其它子框架的 FCK 编辑器实例:
var Editor = window.FrameName.FCKeditorAPI.GetInstance('InstanceName');
从页面弹出窗口中获得父窗口的 FCK 编辑器实例:
var Editor = opener.FCKeditorAPI.GetInstance('InstanceName');
FCK获取焦点
获取焦点是否在FCK中:
oEditor.HasFocus
FCK获取焦点:
oEditor.Focus();//获取焦点
获取和设置FCK的内容
获得 FCK 编辑器的内容:
oEditor.GetXHTML(formatted); // formatted 为:true|false,表示是否按HTML格式取出。
设置 FCK 编辑器的内容:
oEditor.SetHTML("content", false); // 第二个参数为:true|false,是否以所见即所得方式设置其内容。
插入内容到 FCK 编辑器:
oEditor.InsertHtml("html"); // "html"为HTML文本
检查 FCK 编辑器内容是否发生变化:
oEditor.IsDirty();
// 获取编辑器中HTML内容
function getEditorHTMLContents(EditorName) {
var oEditor = FCKeditorAPI.GetInstance(EditorName);
return(oEditor.GetXHTML(true));
}
// 获取编辑器中文字内容
function getEditorTextContents(EditorName) {
var oEditor = FCKeditorAPI.GetInstance(EditorName);
return(oEditor.EditorDocument.body.innerText);
}
// 设置编辑器中内容
function SetEditorContents(EditorName, ContentStr) {
var oEditor = FCKeditorAPI.GetInstance(EditorName) ;
oEditor.SetHTML(ContentStr) ;
}
FCK的事件处理
FCK定义有OnComplete,OnBlur和OnFocus等事件,这样就可以使用事件的处理函数完成相应的处理。
FCK添加事件处理函数的方法是:fckInstance.Events.AttachEvent( EventName, function)
代码
//FCKeditor加载完成后做处理的方法
function FCKeditor_OnComplete( editorInstance )
{
editorInstance.Events.AttachEvent( 'OnBlur' , FCKeditor_OnBlur ) ;
editorInstance.Events.AttachEvent( 'OnFocus', FCKeditor_OnFocus ) ;
}
function FCKeditor_OnBlur( editorInstance )
{
//失去焦点收起工具栏
editorInstance.ToolbarSet.Collapse() ;
}
function FCKeditor_OnFocus( editorInstance )
{
editorInstance.ToolbarSet.Expand() ;
}
获取FCK的实例
FCKeditorAPI是FCKeditor加载后注册的一个全局对象,利用它我们就可以完成对编辑器的各种操作。
在当前页获得 FCK 编辑器实例:
var Editor = FCKeditorAPI.GetInstance('InstanceName');
从 FCK 编辑器的弹出窗口中获得 FCK 编辑器实例:
var Editor = window.parent.InnerDialogLoaded().FCK;
从框架页面的子框架中获得其它子框架的 FCK 编辑器实例:
var Editor = window.FrameName.FCKeditorAPI.GetInstance('InstanceName');
从页面弹出窗口中获得父窗口的 FCK 编辑器实例:
var Editor = opener.FCKeditorAPI.GetInstance('InstanceName');
FCK获取焦点
获取焦点是否在FCK中:
oEditor.HasFocus
FCK获取焦点:
oEditor.Focus();//获取焦点
获取和设置FCK的内容
获得 FCK 编辑器的内容:
oEditor.GetXHTML(formatted); // formatted 为:true|false,表示是否按HTML格式取出。
设置 FCK 编辑器的内容:
oEditor.SetHTML("content", false); // 第二个参数为:true|false,是否以所见即所得方式设置其内容。
插入内容到 FCK 编辑器:
oEditor.InsertHtml("html"); // "html"为HTML文本
检查 FCK 编辑器内容是否发生变化:
oEditor.IsDirty();
复制代码 代码如下:
// 获取编辑器中HTML内容
function getEditorHTMLContents(EditorName) {
var oEditor = FCKeditorAPI.GetInstance(EditorName);
return(oEditor.GetXHTML(true));
}
// 获取编辑器中文字内容
function getEditorTextContents(EditorName) {
var oEditor = FCKeditorAPI.GetInstance(EditorName);
return(oEditor.EditorDocument.body.innerText);
}
// 设置编辑器中内容
function SetEditorContents(EditorName, ContentStr) {
var oEditor = FCKeditorAPI.GetInstance(EditorName) ;
oEditor.SetHTML(ContentStr) ;
}
FCK的事件处理
FCK定义有OnComplete,OnBlur和OnFocus等事件,这样就可以使用事件的处理函数完成相应的处理。
FCK添加事件处理函数的方法是:fckInstance.Events.AttachEvent( EventName, function)
代码
复制代码 代码如下:
//FCKeditor加载完成后做处理的方法
function FCKeditor_OnComplete( editorInstance )
{
editorInstance.Events.AttachEvent( 'OnBlur' , FCKeditor_OnBlur ) ;
editorInstance.Events.AttachEvent( 'OnFocus', FCKeditor_OnFocus ) ;
}
function FCKeditor_OnBlur( editorInstance )
{
//失去焦点收起工具栏
editorInstance.ToolbarSet.Collapse() ;
}
function FCKeditor_OnFocus( editorInstance )
{
editorInstance.ToolbarSet.Expand() ;
}
您可能感兴趣的文章:
- Fckeditor XML Request error:internal server error (500) 解决方法小结
- FCKeditor编辑器添加图片上传功能及图片路径问题解决方法
- ie9后浏览器fckeditor无法上传图片、弹出浮层内容不显示的解决方法
- fckeditor在ie9中无法弹出对话框的解决方法(弹出层兼容问题)
- FCKeditor 图片上传进度条不动的解决方法
- asp.net+FCKeditor上传图片显示叉叉图片无法显示的问题的解决方法
- 浏览器执行history.go(-1) FCKeditor编辑框内显示html源代码的解决方法
- 伪静态下不能使用FCKeditor的解决方法
- Ewebeditor及fckeditork单引号问题的解决方法
- FCKeditor 2.6 编码错误导致修改的内容出现乱码的解决方法
- jsp fckeditor 上传中文图片乱码问题的解决方法
- Asp.net FCKEditor 2.6.3 上传文件没有权限解决方法
- fckeditor部署到weblogic出现xml无法读取及样式不能显示问题的解决方法
相关文章
关于jsp版ueditor1.2.5的部分问题解决(上传图片失败)
这篇文章主要介绍大家在使用jsp版ueditor1.2.5的碰到的一些问题解决方法,需要的朋友可以参考下2013-06-06CKEditor/FCKEditor 使用FCKeditor 2.6.5 快速使用教程(含插入图片)
CKEditor 是著名的 HTML 编辑器,IBM、Oracle、Adobe 等都在用。CKEditor 创建于 2003 年,其前身为 FCKEditor,在 2009 年的时候把“F”去掉了,更名为 CKEditor。2010-03-03eWebEditor 辑器按钮失效 IE8下eWebEditor编辑器无法使用的解决方法
最近我把IE浏览器更新到了IE8.0,在用eWebEditor在线HTML文本编辑器的时候点击eWebEditor上的所有编辑按钮都没用,只看到浏览器状态栏左下角显示网页上有错误,于是上网查了一下。终于找到解决的方法,测试后正常。2009-06-06
最新评论