FCKEditor使用说明

1. FCKeditor 介绍
FCKeditor 这个开源的HTML 文本编辑器可以让web 程序拥有如MS Word 这样强大的编辑功
能.FCKeditor 支持当前流行的浏览器如IE 5.5+, Firefox 1.0+, Mozilla 1.3+与Netscape 7+等。
 

FCKeditor官司方网址:http://www.fckeditor.net/

FCKeditor在线DEMOhttp://www.fckeditor.net/demo

FCKeditor下载直址:http://www.fckeditor.net/download (该版本为 2.3.2 ),最新版已经是2.4了。

2.FCKeditor.java介绍

不能直接在JSP项目中使用,需要FCKeditor.java库的支持。

FCKeditor.java是针对对JAVA中使用FCKeditorSimone Chiaretta开发的FCKeditorJAVA实现。

下载地址:http://www.fckeditor.net/download (最近版本为2.3)

 

3.JAVA项目中使用FCKeditor在线编辑器

开发环境:JDK5.0 +<!--[if !supportLists]--> Eclipse 3.2.1 + WTP1.5.2

(1)新建一个WEB工程:

(2) 解压 FCKeditor_ 2.3.2 .zip包,将其中的 edit 文件夹到项目中的 WebRoot 目录

(3) 解压 FCKeditor_ 2.3.2 .zip 包,将其中的 fckconfig.js、fckeditor.js、fckstyles.xml、fcktemplates.xml 文件夹到项目中的 WebRoot 目录

(4) 解压 FCKeditor.java-2.3.zip 包,将其中的 /web/WEB-INF/lib 下的两个 jar 文件到项目的 WebRoot/WEB-INF/lib 目录

(5) 解压 FCKeditor.java-2.3.zip 包,将其中的 /src 下的 FCKeditor.tld 文件到项目的 WebContent/WEB-INF 目录

(6) 删除 WebContent/edit 目录下的 _source 文件夹(以“_”开始的文件,在项目中无用)

完成后的目录结构下如:

说明:图中的input.jsp和display.jsp两个是我写的测试集成FCKeditor的JSP文件。

  UserFiles是FCKeditor上传文件的文件夹。

修改WebContent/WEB-INF/web.xml文件,加入FCKeditor的配置信息,如下:
<? xml version="1.0" encoding="UTF-8" ?>
< web-app  id ="WebApp_ID"  version ="2.4"
    xmlns
="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi
="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation
="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" >
    
< display-name > FCKeditor </ display-name >
    
< servlet >
        
< servlet-name > Connector </ servlet-name >
        
< servlet-class >
            com.fredck.FCKeditor.connector.ConnectorServlet
        
</ servlet-class >
        
< init-param >
            
< param-name > baseDir </ param-name >
            
<!--  此为文件浏览路径  -->
            
< param-value > /UserFiles/ </ param-value >
        
</ init-param >
        
< init-param >
            
< param-name > debug </ param-name >
            
< param-value > true </ param-value >
        
</ init-param >
        
< load-on-startup > 1 </ load-on-startup >
    
</ servlet >
    
< servlet >
        
< servlet-name > SimpleUploader </ servlet-name >
        
< servlet-class >
            com.fredck.FCKeditor.uploader.SimpleUploaderServlet
        
</ servlet-class >
        
< init-param >
            
< param-name > baseDir </ param-name >
            
<!--  此为文件上传路径,需要在WebRoot 目录下新建 UserFiles 文件夹  -->
            
<!--  根据文件的类型还需要新建相关的文件夹 Image、Flash  -->
            
< param-value > /UserFiles/ </ param-value >
        
</ init-param >
        
< init-param >
            
< param-name > debug </ param-name >
            
< param-value > true </ param-value >
        
</ init-param >
        
< init-param >
            
<!--  此参数为是否开启上传功能  -->
            
< param-name > enabled </ param-name >
            
< param-value > false </ param-value >
        
</ init-param >
        
< init-param >
            
< param-name > AllowedExtensionsFile </ param-name >
            
< param-value ></ param-value >
        
</ init-param >
        
< init-param >
            
<!--  此参数为文件过滤,以下的文件类型都不可以上传  -->
            
< param-name > DeniedExtensionsFile </ param-name >
            
< param-value >
                php|php3|php5|phtml|asp|aspx|ascx|jsp|cfm|cfc|pl|bat|exe|dll|reg|cgi
            
</ param-value >
        
</ init-param >
        
< init-param >
            
< param-name > AllowedExtensionsImage </ param-name >
            
< param-value > jpg|gif|jpeg|png|bmp </ param-value >
        
</ init-param >
        
< init-param >
            
< param-name > DeniedExtensionsImage </ param-name >
            
< param-value ></ param-value >
        
</ init-param >
        
< init-param >
            
< param-name > AllowedExtensionsFlash </ param-name >
            
< param-value > swf|fla </ param-value >
        
</ init-param >
        
< init-param >
            
< param-name > DeniedExtensionsFlash </ param-name >
            
< param-value ></ param-value >
        
</ init-param >
        
< load-on-startup > 1 </ load-on-startup >
    
</ servlet >
    
< servlet-mapping >
        
< servlet-name > Connector </ servlet-name >
        
< url-pattern >
            /editor/filemanager/browser/default/connectors/jsp/connector
        
</ url-pattern >
    
</ servlet-mapping >
    
< servlet-mapping >
        
< servlet-name > SimpleUploader </ servlet-name >
        
< url-pattern >
            /editor/filemanager/upload/simpleuploader
        
</ url-pattern >
    
</ servlet-mapping >
</ web-app >

注:web.xml中已经加入了一些常用配置的说明。

  • 新建input.jsp文件,内容如下:(注意内容中的” testfck”这个id)
    <% @ page contentType="text/html;charset=UTF-8" language="java" %>
    <% @ taglib uri="/WEB-INF/FCKeditor.tld" prefix="fck" %>
    < html >
    < head >
    < title > Test </ title >
    </ head >
    < script  type ="text/javascript"  src ="fckeditor.js" ></ script >
    < script  type ="text/javascript" >
    window.onload 
    = function() {
     
    var oFCKeditor = new FCKeditor("testfck"); <!—注意这里 -->
     oFCKeditor.BasePath 
    = "";
     oFCKeditor.ToolbarSet 
    = "Basic";
     oFCKeditor.ReplaceTextarea(
    "testfck");
    }

    </ script >
    < body >
    < FORM  action ="display.jsp" >
    < textarea  rows ="20"  cols ="20"
        id
    ="testfck"  name ="testfck" ></ textarea >   < br >   <! —注意这里 -- >
    < hr >
    < input  type ="submit"  value ="提交" ></ FORM >
    </ body >
    </ html >

说明:在JSP中集成FCKeditor有以下几种方式:

(1)    JavaScript集成:

如上面内容所示,通过新建一个FCKeditor对象,然后调用该对象的设置方法来设置FCKeditor的各个属性,最后调用FCKeditorReplaceTextarea()替换HTML页面中的<textarea>标签。另外FCKeditor也可以调用它的create()方法来直接在JSP嵌入FCKeditor编辑器。

注:注意上面的oFCKeditor.BasePath = "";用这种方式FCKeditor会去查找它的editor目录下的fckeditor.html文件,由于我是直接将editor文件夹拷贝到WebContent目录下,所以将它的BasePath设置为””,如果您将editor拷贝到其它目录,请设置相应的BasePath属性。FCKeditor默认是将其放在fckeditor目录下。

(2)  使用JSP自定义标签(该方法一定要完成第(5)步:解压 FCKeditor.java-2.3.zip 包,将其中的 /src 下的 FCKeditor.tld 文件到项目的 WebContent/WEB-INF 目录)

首先在JSP中加入FCKeditor标签:

<%@ taglib uri=”/WEB-INF/FCKeditor.tld” prefix=”fck” %>

                 然后在 JSP 页面中加入如下代码,集成 FCKeditor 编辑器:
< fck:editor 
    
id ="testfck"  <!—注意这里 -- >
    basePath="/FCKeditor/" 
    height="60%"
    skinPath="/FCKeditor/editor/skins/default/" 
    toolbarSet="Default"
    imageBrowserURL="/FCKeditor/editor/filemanager/browser/default/browser.html?Type=Image
&Connector =connectors/jsp/connector"
    linkBrowserURL="/FCKeditor/editor/filemanager/browser/default/browser.html?Connector=connectors/jsp/connector"
    flashBrowserURL="/FCKeditor/editor/filemanager/browser/default/browser.html?Type=Flash
&Connector =connectors/jsp/connector"
    imageUploadURL="/FCKeditor/editor/filemanager/upload/simpleuploader?Type=Image"
    linkUploadURL="/FCKeditor/editor/filemanager/upload/simpleuploader?Type=File"
    flashUploadURL="/FCKeditor/editor/filemanager/upload/simpleuploader?Type=Flash">
</ fck:editor >

(10) 新建display.jsp文件,这个文件比较简单,只是简单的显示从FCKeditor在线编辑器传递过来的内容,如下:

<%=request.getParameter("testfck")%>

注意这里的getParameter(“testfck”),这个”testfck”就是在input.jsp中设置的id

 

4.FCKeditor类说明

下面是用来在页面中建立编辑器的FCKEDITOR 类的说明

(1) 构造器:

FCKeditor(instanceName[,width,height,toolbarSet,value])

instanceName:编辑器的唯一名称(相当于ID)

WIDTH:宽度

HEIGHT:高度

toolbarSet:工具条集合的名称

value:编辑器初始化内容

(2) 属性:

instanceName:编辑器实例名

width:宽度,默认值为100%

height:高度,默认值是200

ToolbarSet:工具集名称,参考FCKCONFIG.JS,默认值是Default

value:初始化编辑器的HTML 代码,默认值为空

BasePath:编辑器的基路径,默认为/Fckeditor/文件夹,注意,尽量不要使用相对路径.最用相对于站点根路径的表示方法,要以/结尾

CheckBrowser:是否在显示编辑器前检查浏览器兼容性,默认为true

DisplayErrors:是否显示提示错误,默为true;

(3) 集合:

Config[Key]=value;

这个集合用于更改配置中某一项的值,

oFckeditor.Config["DefaultLanguage"]="ptbr";

(4) 方法:

Create()

建立并输出编辑器

RepaceTextArea(TextAreaName)

用编辑器来替换对应的文本框

5.如何配置FCKEDITOR

FCKEDITOR 提供了一套用于定制其外观,特性及行为的设置集.主配置文件名为Fckconfig.js你既可以编辑主配置文件,也可以自己定义单独的配置文件.配置文件使用JAVASCRIPT 语法.修改后,在建立编辑器时,可以使用以下语法:

varoFCKeditor=newFCKeditor('FCKeditor1');

oFCKeditor.Config['CustomConfigurationsPath']='/myconfig.js';

oFCKeditor.Create();

提醒:当你修改配置后,请清空浏览器缓存以查看效果

配置选项:

AutoDetectLanguage=true/false 自动检测语言

BaseHref=""相对链接的基地址

ContentLangDirection="ltr/rtl"默认文字方向

ContextMenu=字符串数组,右键菜单的内容

CustomConfigurationsPath=""自定义配置文件路径和名称

Debug=true/false 是否开启调试功能,这样,当调用FCKDebug.Output(),会在调试窗中输出内容

DefaultLanguage=""缺省语言

EditorAreaCss=""编辑区的样式表文件

EnableSourceXHTML=true/false TRUE ,当由可视化界面切换到代码页时,HTML 处理成XHTML

EnableXHTML=true/false 是否允许使用XHTML 取代HTML

FillEmptyBlocks=true/false 使用这个功能,可以将空的块级元素用空格来替代

FontColors=""设置显示颜色拾取器时文字颜色列表

FontFormats=""设置显示在文字格式列表中的命名

FontNames=""字体列表中的字体名

FontSizes=""字体大小中的字号列表

ForcePasteAsPlainText=true/false 强制粘贴为纯文本

ForceSimpleAmpersand=true/false 是否不把&符号转换为XML 实体

FormatIndentator=""当在源码格式下缩进代码使用的字符

FormatOutput=true/false 当输出内容时是否自动格式化代码

FormatSource=true/false 在切换到代码视图时是否自动格式化代码

FullPage=true/false 是否允许编辑整个HTML 文件,还是仅允许编辑BODY 间的内容

GeckoUseSPAN=true/false 是否允许SPAN 标记代替B,I,U 标记

IeSpellDownloadUrl=""下载拼写检查器的网址

ImageBrowser=true/false 是否允许浏览服务器功能

ImageBrowserURL=""浏览服务器时运行的URL

ImageBrowserWindowHeight=""图像浏览器窗口高度

ImageBrowserWindowWidth=""图像浏览器窗口宽度

LinkBrowser=true/false 是否允许在插入链接时浏览服务器

LinkBrowserURL=""插入链接时浏览服务器的URL

LinkBrowserWindowHeight=""链接目标浏览器窗口高度

LinkBrowserWindowWidth=""链接目标浏览器窗口宽度

Plugins=object 注册插件

PluginsPath=""插件文件夹

ShowBorders=true/false 合并边框

SkinPath=""皮肤文件夹位置

SmileyColumns=12 图符窗列数

SmileyImages=字符数组图符窗中图片文件名数组

SmileyPath=""图符文件夹路径

SmileyWindowHeight 图符窗口高度

SmileyWindowWidth 图符窗口宽度

SpellChecker="ieSpell/Spellerpages"设置拼写检查器

StartupFocus=true/false 开启时FOCUS 到编辑器

StylesXmlPath=""设置定义CSS 样式列表的XML 文件的位置

TabSpaces=4TAB 键产生的空格字符数

ToolBarCanCollapse=true/false 是否允许展开/折叠工具栏

ToolbarSets=object 允许使用TOOLBAR 集合

ToolbarStartExpanded=true/false 开启是TOOLBAR 是否展开

UseBROnCarriageReturn=true/false 当回车时是产生BR 标记还是P 或者DIV 标记__

6.自定义样式列表

FCKEDITOR 的样式工具栏中提供了预定义的样式,样式是通过XML 文件定义的,默认的

XML 样式文件存在于FCkEditor 根文件夹下的FckStyls.xml 文件中

这个XML 文件的结构分析如下:

<? xml version="1.0" encoding="utf8" ?>
< Styles >
    
< Style  name ="MyImage"  element ="img" >
        
< Attribute  name =" style "  value ="padding:5px"   />
        
< Attribute  name =" border "  value ="2"   />
    
</ Style >
    
< Style  name =" Italic "  element ="em"   />
    
< Style  name =" Title "  element ="span" >
        
< Attribute  name =" class "  value ="Title"   />
    
</ Style >
    
< Style  name =" TitleH3 "  element ="h3"   />
</ Styles >

每一个STYLE 标记定义一种样式,NAME 是显示在下拉列表中的样式名,ELEMENT 属性指

定此样式所适用的对象,因为FCKEDITOR 中的样式是上下文敏感的,也就是说,选择不同的

对象,仅会显示针对这类对象定义的样式

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值