在線編輯器:Fckeditor的使用

          Posted on 2009-09-02 11:58 java小爬蟲 閱讀(2391) 評論(2)  編輯  收藏
           

          1 下載FCKeditor_2.6.4.1,fckeditor-java,fckeditor-java-demo-2.4.2.war;

          2 html文件中使用fckeditor

           解壓FCKeditor_2.6.4.1,把FCKeditor_2.6.4.1中的fckeditor文件夾復制到webroot目錄下,刪除出錯文件(fck_docprops.html文檔類文件)。

             新建文件如下test1.html

            <html>

                 <head>

                        <title>test1.html</title>

                        <script type="text/javascript" src="fckeditor/fckeditor.js"></script>

                 </head>

                 <body>

                        <form action="index.jsp" method="post">

                 <script type="text/javascript">

          var oFCKeditor = new FCKeditor( 'content' ) ;

          oFCKeditor.BasePath = "/fck_test/fckeditor/" ;<!-- fck_test為項目名稱 -->

          oFCKeditor.Width       = 1000 ;

          oFCKeditor.Height      = 300 ;

          oFCKeditor.ToolbarSet      ="Basic" ;

          oFCKeditor.Value       = '<p>This is some <strong>sample text<\/strong>. You are using <a ;

          oFCKeditor.Create() ;

                        </script>

                               <input type="submit" value="Submit" />

                        </form>

                 </body>

          </html>

           

           

           

          <html>

                 <head>

                        <title>test2.html</title>

                        <script type="text/javascript" src="fckeditor/fckeditor.js"></script>

                        <script type="text/javascript">

          window.onload = function()

          {

                 var oFCKeditor = new FCKeditor( 'FCKeditor1' ) ;

          oFCKeditor.BasePath = "/fck_test/fckeditor/" ;

                 oFCKeditor.ReplaceTextarea() ;

          }

                 </script>

                 </head>

                 <body>

                        <form action="" method="post"

                               target="_blank">

                               <div>

                                      <textarea name="FCKeditor1" rows="10" cols="80"

                                             style="width: 100%; height: 200px">&lt;p&gt;This is some &lt;strong&gt;sample text&lt;/strong&gt;. You are using &lt;a &gt;FCKeditor&lt;/a&gt;.&lt;/p&gt;</textarea>

                               </div>

                               <br />

                               <input type="submit" value="Submit" />

                        </form>

                 </body>

          </html>

           

           

             3 jsp中使用fckeditor

             解壓fckeditor-java-demo-2.4.2.war,找到5jar包,導入工程。

            

             新建文件如下:test1.jsp

            

          <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>

          <%@ taglib uri="http://java.fckeditor.net" prefix ="FCK" %>

           

          <html>

            <head>

            </head>

           

            <body>

            <form action="index.jsp" method="post">

             <form action="index.jsp" method="post">

              <FCK:editor instanceName="myEditor" basePath="/fckeditor" value="dfadsfds"></FCK:editor>

            <input type="submit" value="Submit" />

            <input type="submit" value="Submit" />

            </form>

            </body>

          </html>

           

          index.jsp

          <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>

          <html>

            <head>  

            </head>

            <body>

              <%

                 request.setCharacterEncoding("utf-8");

                 System.out.println(request.getParameter("myEditor"));

               %>

               ${param.myEditor}

            </body>

          </html>

           

           

           

           

          fckeditor對象的屬性:

                   Width ,Height,Value,ToolbarSet="Default/Basic", BasePath;

           

          fckeditor配置文件

             在配置文件中修改如下一項:(fckconfig.js)  

           FCKConfig.CustomConfigurationsPath = FCKConfig.EditorPath+'fck_config.js' ;

           

           新建配置文件fck_config.js ,內(nèi)容如下,對fckeditor進行自定義:

           

          FCKConfig.AutoDetectLanguage     = false ; <!—自動檢測語言 -->

           

          FCKConfig.ToolbarSets["my"] = [

                 ['Source','DocProps'],

                 ['Bold','Italic','Underline','StrikeThrough','-','Subscript','Superscript'],

                 ['OrderedList','UnorderedList','-','Outdent','Indent','Blockquote','CreateDiv'],

                 ['JustifyLeft','JustifyCenter','JustifyRight','JustifyFull'],

                 ['Link','Unlink','Anchor'],

                 ['Image','Flash','Table','Rule','Smiley','SpecialChar','PageBreak'],

                 '/',

                 ['Style','FontFormat','FontName','FontSize'],

                 ['TextColor','BGColor'],

                 ['FitWindow','ShowBlocks','-','About']           

          ] ;        <!—配置工具條 -->

           

          FCKConfig.FontNames            = '宋體;楷體_GB2312;黑體;隸書;Times New Roman;Arial' ;           <!—配置字體 -->

           

          FCKConfig.EnterMode = 'br' ;                // p | div | br

          FCKConfig.ShiftEnterMode = 'p' ;   // p | div | br   <!—配置換行格式 -->

           

          FCKConfig.EditorAreaCSS = FCKConfig.BasePath + 'css/fck_editorarea.css' ;

           

          FCKConfig.SmileyPath      = FCKConfig.BasePath + 'images/smiley/msn/' ;

          FCKConfig.SmileyImages  = ['regular_smile.gif','sad_smile.gif','wink_smile.gif','teeth_smile.gif','confused_smile.gif','tounge_smile.gif','embaressed_smile.gif','omg_smile.gif','whatchutalkingabout_smile.gif','angry_smile.gif','angel_smile.gif','shades_smile.gif','devil_smile.gif','cry_smile.gif','lightbulb.gif','thumbs_down.gif','thumbs_up.gif','heart.gif','broken_heart.gif','kiss.gif','envelope.gif','100_3650.JPG'] ;

          FCKConfig.SmileyColumns = 8 ;

          FCKConfig.SmileyWindowWidth            = 320 ;

          FCKConfig.SmileyWindowHeight     = 210 ;        <!—配置css以及表情圖片及顯示方式 -->

           

           

          文件上傳:

           

          web.xml文件中加入:

           

                 <servlet>

                        <servlet-name>Connector</servlet-name>

                        <servlet-class>

                               net.fckeditor.connector.ConnectorServlet

                        </servlet-class>

                        <load-on-startup>1</load-on-startup>

                 </servlet>

           

                 <servlet-mapping>

                        <servlet-name>Connector</servlet-name>

                        <!-- Do not wrap this line otherwise Glassfish will fail to load this file -->

                        <url-pattern>/fckeditor/editor/filemanager/connectors/*</url-pattern>

                 </servlet-mapping>

                

                 src下新建文件fckeditor.properties內(nèi)容如下:

                 connector.userActionImpl=net.fckeditor.requestcycle.impl.UserActionImpl

                

                 這樣,就可以進行文件的上傳

                

                

                 文件上傳可能出現(xiàn)的問題:中文文件名亂碼

              解決方案:

                

                  找到ConnectorServlet類,關聯(lián)源碼:

                  

                  找到如下所示代碼,增加upload.setHeaderEncoding("utf-8");

                  

                       FileItemFactory factory = new DiskFileItemFactory();

                                      ServletFileUpload upload = new ServletFileUpload(factory);

                                      upload.setHeaderEncoding("utf-8");//增加編碼格式

                                      try {

           

                                             List<FileItem> items = upload.parseRequest(request);

                                            

                 ConnectorServlet作為自己的類使用,在web.xml中修改配置如下;

          <servlet>

                        <servlet-name>Connector</servlet-name>

                        <servlet-class>

                               com.ConnectorServlet   //修改成自己的類

                        </servlet-class>

                        <load-on-startup>1</load-on-startup>

                 </servlet>

                

                

                 這樣就解決了文件中文名的亂碼問題

                

                

                 修改文件上傳的類型:

                

                 服務器端: fckeditor.properties中加入

                 connector.resourceType.image.extensions.allowed = bmp|gif|jpeg|jpg|png|abc

                 客戶端:fck_config.js加入

                 FCKConfig.ImageUploadAllowedExtensions  = ".(jpg|gif|jpeg|png|bmp|abc)$" ;              // empty for all

                                            

                                              

          Feedback

          # re: 在線編輯器:Fckeditor的使用  回復  更多評論   

          2009-09-02 14:51 by mcframe
          哈哈,終于有人再用了,我也覺得這個編輯器不錯,有問題的可以問偶哦

          # re: 在線編輯器:Fckeditor的使用  回復  更多評論   

          2009-10-13 16:06 by 星期五
          @mcframe
          正好問你 這個編輯器 2.3 跟 2.4 之間有個問題,2.3 選擇字體,鼠標點擊不會還原上一個字體,但是 2.4選擇字體后,鼠標點擊時會還原上一個字體。這是配置問題,還是代碼問題?

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導航:
           
          主站蜘蛛池模板: 海盐县| 海伦市| 个旧市| 喀喇| 双江| 肥西县| 桃园县| 会昌县| 麻江县| 巴里| 益阳市| 和林格尔县| 涟源市| 天祝| 和政县| 锦屏县| 旬邑县| 斗六市| 亚东县| 惠水县| 崇州市| 大田县| 丰台区| 宁明县| 济南市| 嘉义县| 得荣县| 苍南县| 长武县| 济源市| 巴林右旗| 海宁市| 越西县| 盐山县| 垦利县| 中江县| 荃湾区| 射阳县| 淮阳县| 襄樊市| 新邵县|