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 添加的功能移除
相关文章
相关标签/搜索