ckeditor、ckeditor配置--整合

1.將ckeditor和ckfinder文件夾拷入項目文件夾中,刷新項目。javascript

2.ckfinder把文件夾中的bin目錄下的dll文件(CKFinder.dll)添加到網站的引用中,防止出現找不到類的錯誤。(未能加載類型「CKFinder.Connector.Connector」。)html

3. 在添加編輯控件的頁面(aspx)的head中加入,並插入代碼:java

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

    <asp:TextBox ID="i_content" runat="server" TextMode="MultiLine" Height="362px"
                Width="100%"></asp:TextBox>
    </div>

<script type="text/javascript">
        CKEDITOR.replace('<%= i_content.ClientID %>', {skin : 'kama'});
</script>

web

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

<textarea cols="80" id="txtremark" rows="50" runat="server"></textarea>

<script type="text/javascript">
            CKEDITOR.replace('txtremark', { height: 250, width: 800 });
</script>

4.在項目文件夾中加入uploads文件夾來存放上傳的文件ajax

5.修改頁面的page指令ValidateRequest="false"
<%@ Page Language="C#" ValidateRequest="false" %> 安全

7.獲取或設置編輯器中的內容
//獲取編輯器中的內容
lblView.Text=Server.HtmlEncode( this.i_content.Text);
//設置編輯器中的內容
txtContent.Text = Server.HtmlDecode("<h1>設置內容</h1>"); 服務器

session

//獲取編輯器中的內容app

model.Remark = this.txtremark.Value;編輯器

//設置編輯器中的內容

this.txtremark.Value = model.Remark;


一些用應中(如ajax應用)須要在客戶端處理完全部的數據,而後用它本身的方式向服務器發送數據,在這些狀況下,使用CKEditor API就足以輕鬆獲取編輯器實例中的內容。例 如: <script type="text/javascript">
var editor_data = CKEDITOR.instances.i_content.getData();
</script>

8.加入中文字體:

打開CKeditor目錄裏的config.js,在

CKEDITOR.editorConfig = function( config )
{

    config.language = 'zh-cn'; //中文
    //  config.uiColor = '#AFEEEE';//編輯器顏色
    config.font_names = '微軟雅黑;宋體;楷體_GB2312;新微軟雅黑;黑體;隸書;幼圓;微軟雅黑;Arial;Comic Sans MS;Courier New;Tahoma;Times New Roman;Verdana';
};

9.修改文件上傳目錄

打開ckfinder目錄裏的config.ascx

修改例如:

BaseUrl = "/uploads/";

BaseDir = Server.MapPath("~/uploads/");

點擊下載ckeditor、ckeditor

 

 

最新版本下載

http://ckeditor.com/download

http://ckfinder.com/download

CKEditor我下載的是3.6.4,CKFinder下載的是2.3 for ASP.NET,首先解壓全部的文件,而後將ckeditor和ckfinder文件夾放到網站的目錄下,能夠刪除ckeditor和ckfinder文 件夾下的_samples、_source 文件夾,將CKFinder.dll添加到站點的bin/文件夾中,而後在網站頁面頭部添加js的引用,具體路徑根據本身放置的路徑設置,以下:

<script src="../editor/ckeditor/ckeditor.js" type="text/javascript"></script>
<script src="../editor/ckfinder/ckfinder.js" type="text/javascript"></script>

在頁面中添加一個textarea,具體代碼以下:

<textarea name="individual" id="individual" runat="server"></textarea>
<script type="text/javascript">
    CKEDITOR.replace('individual');
</script>

接下來打開ckeditor文件夾下的config.js文件,在CKEDITOR.editorConfig = function (config) {};方法中添加以下代碼:

config.filebrowserImageBrowseUrl = '../editor/ckfinder/ckfinder.html?Type=Images';
config.filebrowserFlashBrowseUrl = '../editor/ckfinder/ckfinder.html?Type=Flash';
config.filebrowserUploadUrl = '../editor/ckfinder/core/connector/aspx/connector.aspx?command=QuickUpload&type=Files';
config.filebrowserImageUploadUrl = '../editor/ckfinder/core/connector/aspx/connector.aspx?command=QuickUpload&type=Images';
config.filebrowserFlashUploadUrl = '../editor/ckfinder/core/connector/aspx/connector.aspx?command=QuickUpload&type=Flash';
config.filebrowserWindowWidth = '800';  //「瀏覽服務器」彈出框的size設置
config.filebrowserWindowHeight = '500';

上面的路徑也須要根據本身的設置。

而後打開ckfinder文件夾下面的config.ascx文件,爲了全部的人都能看到服務器上上傳文件夾裏面的文件,將函數public override bool CheckAuthentication返回值改成true,其實也能夠根據自身網站的安全須要去更改代碼,這裏只是爲了簡單實現,代碼以下:

 

public override bool CheckAuthentication()
    {
        // WARNING : DO NOT simply return "true". By doing so, you are allowing
        // "anyone" to upload and list the files in your server. You must implement
        // some kind of session validation here. Even something very simple as...
        //
        //        return ( Session[ "IsAuthorized" ] != null && (bool)Session[ "IsAuthorized" ] == true );
        //
        // ... where Session[ "IsAuthorized" ] is set to "true" as soon as the
        // user logs on your system.

        return true;
    }

 

而且在public override void SetConfig()方法中找到BaseUrl,這個即爲存放上傳文件的路徑,根據本身的網站進行更改。

 

CKFinder 2.0.2.1破解,去掉demo

1、關於CKEditor 如何配置 以及 和 CKFinder 如何配合使用就不在這裏作介紹了。網上的例子也不少。或者等在下有時間了再補充這一部分。

2、我使用的版本:

        CKFinder :2.0.2.1

3、破解辦法:

       一、解決左下角樹形目錄上的demo

打開ckfinder.js 找到:

p="\x3c\144\x69\x76\040\143\x6c\x61\163\x73\075\x27\166\x69\x65\x77\040\x74\x6f\157\154\137\160\141\x6e\145\154\047\040\x73\164\x79\154\x65\075\047\x64\x69\163\160\x6c\141\x79\x3a\040\142\154\x6f\x63\153\x20\041\151\155\160\x6f\162\164\141\156\164\x3b\040\160\157\163\x69\x74\x69\157\x6e\x3a\040\163\164\x61\164\x69\143\x20\x21\x69\x6d\160\157\x72\x74\141\156\164\x3b\x20\x63\157\154\x6f\x72\x3a\x20\x62\x6c\141\x63\153\x20\041\x69\155\160\157\x72\164\141\x6e\x74\x3b\x20\x62\141\x63\153\147\162\x6f\165\x6e\144\055\x63\157\154\x6f\x72\072\040\x77\x68\x69\164\145\x20\041\151\x6d\x70\157\162\164\141\156\164\073\x27\x3e\x54\150\151\163\x20\151\x73\x20\x74\150\x65\x20\x44\x45\115\117\040\x76\145\162\163\151\x6f\x6e\040\x6f\x66\x20\x43\113\x46\x69\x6e\144\x65\x72\x2e\040\x50\154\145\141\x73\x65\040\166\151\163\x69\x74\040\x74\x68\x65\040\x3c\x61\x20\150\162\145\x66\075\x27\x68\164\x74\160\x3a\057\057\143\153\146\x69\156\x64\x65\x72\x2e\143\157\x6d\x27\x20\164\x61\x72\x67\x65\164\075\x27\137\142\154\141\156\153\047\x3e\103\113\106\151\x6e\x64\145\162\x20\x77\x65\142\040\x73\151\x74\145\074\x2f\141\x3e\x20\164\157\040\157\x62\x74\x61\151\x6e\x20\x61\x20\x76\x61\154\151\144\x20\x6c\151\x63\x65\x6e\163\145\x2e\074\057\144\x69\x76\076"

修改成:

p="\x20" 或 p=「 」  不能爲空

 

二、解決文件列表上方的demo

打開ckfinder.js 找到:

 

if(!t)this.dV().aC(0).appendHtml(p);

將其刪除掉。

再找:

if(N.files.length)N.fa=G;

這個不要刪除,刪除後就會出現「空文件夾」 提示。  把其修改成:

if(N.files.length)N.fa=''; 即可以。

 

至此,以所有破解成功。。。。。。。。。。。。。。

若是以爲該JS文件太大,能夠再按下放提示,進行修改:

 

a、找到:

F="\x50\x6c\145\141\x73\x65\040\166\151\163\x69\164\x20\x74\x68\145\040\x3c\x61\x20\150\162\145\x66\x3d\x27\150\x74\164\160\072\057\x2f\143\x6b\x66\x69\x6e\x64\145\162\056\143\157\155\047\x20\x74\141\x72\147\145\x74\075\047\137\x62\x6c\141\156\x6b\x27\076\x43\113\106\151\x6e\144\x65\162\040\x77\145\x62\x20\163\151\164\x65\074\x2f\141\x3e\040\164\x6f\040\x6f\142\x74\141\x69\156\040\x61\x20\x76\141\x6c\x69\x64\040\x6c\x69\143\x65\x6e\163\x65\056"

將其修改成  F=「\x20」

其實 F翻譯過來的內容就是:F=」 Please visit the CKFinder web site to obtain a valid license.」

 

b、找到:

H="\x50\x72\157\x64\165\x63\164\x20\154\x69\143\x65\156\163\x65\x20\150\141\163\x20\x65\x78\160\x69\x72\x65\144\x2e\x20"+F

將其修改成:H=" " +   不要爲空就行。

這句其實是:H="Product license has expired."+F

 

注:以上修改只是爲了減小文件大小

 

 

 

關掉Ckfinder的「瀏覽服務器」

關掉Ckfinder的「瀏覽服務器」,共有三處存在「瀏覽服務器」,都須要去除掉。
         a、去除上傳圖片功能中的瀏覽服務器按鈕
           打開ckeditor\plugins\image\dialogs\image.js文件,搜索browseServer,找到該詞第一次出現的位置,在後面添加「,style:'display:none;'」,注意,添的加是雙引號中的內容,最前面有個英文逗號。  
           繼續搜索,找到第二個browseServer的位置,此次要注意,用CSS標準語法,將「display:none;」加入到「style:」的後面去。如此,就關掉了上傳圖片時的「瀏覽服務器」功能。
          b、下面去掉文件上傳中的「瀏覽服務器」按鈕
          打開ckeditor\plugins\link\dialogs\link.js文件,仍是搜索"browseServer"第一次出現的地方,插入雙引號中的內容",style:'display:none;'"。

          c、最後刪掉上傳FLASH中的「瀏覽服務器」按鈕
           打開ckeditor\plugins\flash\dialogs\flash.js文件,仍是搜索"browseServer"第一次出現的地方,插入雙引號內的內容",style:'display:none;'"。

          通過上述三步,則完全關掉了「瀏覽服務器」的功能。
 
選擇功能
CKEDITOR.editorConfig = function( config )
{
config.language = 'zh-cn';
config.uiColor = '#FFA';
config.skin = 'office2003';
config.width = 850;
config.height = 400;
config.toolbar = 'Full';
// 取消 「拖拽以改變尺寸」功能
 
config.resize_enabled = false;
//下面兩行,是關掉拼寫檢查的,否則加載整個文本框時,會很慢.
config.disableNativeSpellChecker = false ;
config.scayt_autoStartup = false;
};

上面代碼中的config.toolbar = 'Full',是全功能、全按鈕的界面,也能夠自定義功能界面,我自定義的功能按鈕以下:
config.toolbar = [['Copy','PasteText', 'PasteFromWord','Image', 'Table','Bold', 'Underline','Format', 'Font', 'FontSize','TextColor', 'BGColor','Maximize'],] ;
 
CKFinder去除某個功能
    在config.ascx文件中把ResourceType.Add 添加的功能移除
相關文章
相關標籤/搜索