一、準備工作
首先下載下傳最新版的FCKeditor V2.3.1,下載下傳位址:http://prdownloads.sourceforge.net/fckeditor/FCKeditor_2.3.1.zip?download ,這個壓縮包裡并不包含ASP.NET要用到的DLL控件,是以還要下載下傳另外一個壓縮包,下載下傳位址:http://sourceforge.net/project/showfiles.php?group_id=75348&package_id=137125。把第一個檔案解壓到WEB根目錄,預設檔案夾名為:FCKeditor;再把第二個包解壓,裡面包含了源代碼,如果你想自己再次開發,可以輕按兩下 FredCK.FCKeditorV2.csproj檔案,打開VS.NET進行修改,所用的語言是C#;不想修改的話,直接把bin/Release下面的FredCK.FCKeditorV2.DLL檔案拷到WEB目錄的bin下面。
二、精簡檔案
因為隻用到ASP.NET,是以有必要精簡一下檔案。
進入FCKeditor檔案夾,把所有“_”開頭的檔案和檔案夾删掉,這些都是一些範例,隻保留editor檔案夾、fckconfig.js、fckeditor.js、fckstyles.xml、fcktemplates.xml就可以了;
進入editor檔案夾,删掉“_source”檔案夾,裡面放的同樣是源檔案;
退回上一級目錄進入filemanager檔案夾,有browser和upload兩個檔案夾。進入browser/default/connectors,隻保留aspx檔案夾,其餘的删掉;mcpuk目錄亦可删除;upload也一樣,隻保留aspx檔案夾;
退到editor再進入images檔案夾,smiley裡面放的是表情圖示,有msn和fun兩個系列,如果你想用自己的表情圖示,可以把它們都删除;如果你想用這裡的表情圖示那就不要删了;
lang裡面放的是語言包,如果隻是用簡體中文,那麼隻保留fcklanguagemanager.js、zh-cn.js兩個檔案就行了,建議也保留 en.js(英文)、zh.js(繁體中文)兩個檔案,fcklanguagemanager.js是語言配置檔案,有了它才能和 fckconfig.js裡的設定成對,對應上相應的語言檔案,一定要保留!
再退出lang檔案夾,進入skins檔案夾,如果你想使用FCKeditor預設的奶黃色,那就把除了default檔案夾外的另兩個檔案夾直接删除,如果想用别的,那就看你自己的喜好了,不要上傳檔案的話把filemanager也删除算了。
至此,檔案精簡完畢,由原來的2.55M變成現在的689K了。接着修改設定
二、修改配置
1、fckconfig.js
(1)、FCKConfig.DefaultLanguage
FCKConfig.DefaultLanguage = 'en' ;改為 FCKConfig.DefaultLanguage = 'zh-cn' ;設定預設語言為簡體中文
(2)、FCKConfig.ToolbarSets["Basic"]
如果你的編輯器還用在網站前台的話,比如說用于留言本或是日記回複時,那就不得不考慮安全了,在前台千萬不要使用Default的toolbar,要麼自定義一下功能,要麼就用系統已經定義好的Basic,也就是基本的toolbar,内容可以修改。
(3)、FCKConfig.ContextMenu
fckeditor支援編輯域内的滑鼠右鍵功能,為了安全,最好也更改一下。把圖像功能去掉,把添加連結功能去掉,因為圖像和連結和flash和圖像按鈕添加功能都能讓前台頁直接通路和上傳檔案,要是這兒不改直接給你上傳個木馬還不馬上玩完?
(4)、FCKConfig.FontNames
加上幾種我們常用的字型
(5)、FCKConfig.SmileyPath
如果你還想用自己的表情圖示的話,那跳改掉這個表情圖示的檔案夾位址,以及下面的表情圖示的檔案名,再下面那三個數字是每行顯示表情數及彈出視窗的寬和高了,這個的大小要根據您的表情圖示排列的視窗的大小而定了。
(6)、FCKConfig.TabSpaces
如果在編輯過程中要用到TAB鍵,就把0改成1;
(7)、設定成asp.net版本
因為FCKeditor預設是ASP的,是以要把它換成ASP.NET。把ASP跟其它被注釋掉的代碼删掉,用ASP.NET來代替。例如:
var _FileBrowserLanguage = 'aspx'
var _QuickUploadLanguage = 'aspx'
四、ASP.NET中的應用
打開項目的“資料總管”,添加“FredCK.FCKeditorV2”引用。
打開添加文章、管理文章相對應的檔案以修改其中的内容。下面以“添加文章”為例。切換到“HTML”界面,添加FCK的引用,代碼如下:
<%@ Register TagPrefix="FCKeditorV2" Namespace="FredCK.FCKeditorV2" Assembly="FredCK.FCKeditorV2" %>
并確定@ Page中的“AutoEventWireup”“validateRequest”兩個值都為false,不然當你發表的文章中含有連結或是其他 HTML語句時,.NET會警告你有安全隐患而出錯。在form的适當位置加入FCKeditor控件,當然form一定要有“runat= "server"”,代碼如下:
<FCKeditorV2:FCKeditor id="content" runat="server"></FCKeditorV2:FCKeditor>
id可以自己命名,自己喜歡易記就行。如果程式中有檢測輸入是否為空的話,那麼就不再是content.Text了,而是content.Value。
FCKeditor預設的安裝目錄是"/FCKeditor/",如果你不是安裝在這個目錄下,那你需要指定BasePath的值,代碼如下:
<FCKeditorV2:FCKeditor id="FCKeditor1" BasePath="~/FCKeditor/" runat="server"></FCKeditorV2:FCKeditor>
或者可以在web.config裡添加:
<add key="FCKeditor:BasePath" value="~/FCKeditor/"></add>