`
charrys
  • 浏览: 35044 次
  • 性别: Icon_minigender_1
  • 来自: 广州
最近访客 更多访客>>
社区版块
存档分类

ckeditor 编辑器+finder配置上传功能

    博客分类:
  • js
阅读更多

一、官方Download

1、CKEditor :点击CKEditor.NET标题下的“Download zip”按钮

此处使用当前最新版本“CKEditor.NET 3.5.2, released on 7 March 2011”

2、CKFinder :点击Asp.net标签下的“Download zip”或者“Download tar.gz”按钮(PS:两个按钮下载的内容一样,说明

此处使用当前最新版本“version: 2.0.2, updated 03.03.2011”

——CKEditor是新一代的FCKEditor,很明显的不同点是CKEditor中文件上传功能独立出来了,需要配合使用CKFinder 才能实现。

二、具体配置顺序

1、在项目中添加对应的文件

右击网站,添加引用。依次添加两个文件夹中“\bin\Debug” 中的dll文件——CKEditor.NET.dll、CKFinder.dll

2、将文件夹“ckeditor”、 “ckfinder”添加到网站的根目录下

注意,下载的文件中包括很多用不到的文件,可以稍微清理一下:

此版本对于 CKEditor只需要“\_Samples”文件夹下的“ckeditor”文件夹即可,其余都可不要。

_source文件夹(源程序文件,可以删除)
changes.html(更新列表,可以删除)
install.html(安装指向,可以删除)
license.html(使用许可,可以删除)

3、修改配置文件

(1)CKEditor配置:打开“ckeditor\config.js”文件,根据需要添加配置信息

Html代码
  1. CKEDITOR.editorConfig  =  function (config) {  
  2.     config.skin  =  'v2' ; //选择皮肤,源文件在“ckeditor\skins\” 中  
  3.     config.resize_enabled  =  false ;  
  4.     // 基 础工具栏  
  5.     // config.toolbar  =  "Basic" ;     
  6.     // 全 能工具栏  
  7.     // config.toolbar  =  "Full" ;     
  8.     // 自 定义工具栏  
  9.     config.toolbar  =  
  10.     [  
  11.     ['Source', '-', 'Preview'], ['Cut', 'Copy', 'Paste', 'PasteText', 'PasteFromWord'],  
  12.     ['Undo', 'Redo', '-', 'Find', 'Replace', '-', 'SelectAll', 'RemoveFormat'],  
  13.     ['NumberedList', 'BulletedList', '-', 'Outdent', 'Indent', 'Blockquote', 'ShowBlocks'], '/',  
  14.     ['Bold', 'Italic', 'Underline', 'Strike', '-', 'Subscript', 'Superscript'],  
  15.     ['JustifyLeft', 'JustifyCenter', 'JustifyRight', 'JustifyBlock'], ['Link', 'Unlink', 'Anchor'],  
  16.     ['Image', 'Flash', 'Table', 'HorizontalRule', 'SpecialChar'], '/',  
  17.     ['Styles', 'Format', 'Font', 'FontSize'], ['TextColor', 'BGColor'], ['Maximize', '-', 'About']  
  18.     ];  
  19. }  
CKEDITOR.editorConfig = function(config) {
	config.skin = 'v2'; //选择皮肤,源文件在“ckeditor\skins\”中
	config.resize_enabled = false;
	// 基础工具栏
	// config.toolbar = "Basic";   
	// 全能工具栏
	// config.toolbar = "Full";   
	// 自定义工具栏
	config.toolbar =
	[
	['Source', '-', 'Preview'], ['Cut', 'Copy', 'Paste', 'PasteText', 'PasteFromWord'],
	['Undo', 'Redo', '-', 'Find', 'Replace', '-', 'SelectAll', 'RemoveFormat'],
	['NumberedList', 'BulletedList', '-', 'Outdent', 'Indent', 'Blockquote', 'ShowBlocks'], '/',
	['Bold', 'Italic', 'Underline', 'Strike', '-', 'Subscript', 'Superscript'],
	['JustifyLeft', 'JustifyCenter', 'JustifyRight', 'JustifyBlock'], ['Link', 'Unlink', 'Anchor'],
	['Image', 'Flash', 'Table', 'HorizontalRule', 'SpecialChar'], '/',
	['Styles', 'Format', 'Font', 'FontSize'], ['TextColor', 'BGColor'], ['Maximize', '-', 'About']
	];
}

(2)在CKEditor中集成CKFinder,注意对应文件的路径

将下面的内容继续添加到 “ckeditor\config.js”文件中

Html代码
  1. CKEDITOR.editorConfig  =  function (config) {  
  2. ……  
  3. config.filebrowserBrowseUrl  =  'ckfinder/ckfinder.html' ; //不要写成"~ /ckfinder/..."或者"/ckfinder/..."  
  4. config.filebrowserImageBrowseUrl  =  'ckfinder/ckfinder.html?Type=Images' ;  
  5. config.filebrowserFlashBrowseUrl  =  'ckfinder/ckfinder.html?Type=Flash' ;  
  6. config.filebrowserUploadUrl  =  'ckfinder/core/connector/aspx/connector.aspx?command=QuickUpload&type=Files' ;  
  7. config.filebrowserImageUploadUrl  =  'ckfinder/core/connector/aspx/connector.aspx?command=QuickUpload&type=Images' ;  
  8. config.filebrowserFlashUploadUrl  =  'ckfinder/core/connector/aspx/connector.aspx?command=QuickUpload&type=Flash' ;  
  9. config.filebrowserWindowWidth  =  '800' ;  //“浏览服务器”弹出框的size设置  
  10. config.filebrowserWindowHeight  =  '500' ;  
  11. }  
  12. CKFinder.SetupCKEditor(null, '../ckfinder /');//注意ckfinder的路径对应实际放置的位置  
CKEDITOR.editorConfig = function(config) {
……
config.filebrowserBrowseUrl = 'ckfinder/ckfinder.html'; //不要写成"~/ckfinder/..."或者"/ckfinder/..."
config.filebrowserImageBrowseUrl = 'ckfinder/ckfinder.html?Type=Images';
config.filebrowserFlashBrowseUrl = 'ckfinder/ckfinder.html?Type=Flash';
config.filebrowserUploadUrl = 'ckfinder/core/connector/aspx/connector.aspx?command=QuickUpload&type=Files';
config.filebrowserImageUploadUrl = 'ckfinder/core/connector/aspx/connector.aspx?command=QuickUpload&type=Images';
config.filebrowserFlashUploadUrl = 'ckfinder/core/connector/aspx/connector.aspx?command=QuickUpload&type=Flash';
config.filebrowserWindowWidth = '800';  //“浏览服务器”弹出框的size设置
config.filebrowserWindowHeight = '500';
}
CKFinder.SetupCKEditor(null, '../ckfinder/');//注意ckfinder的路径对应实际放置的位置

(3)CKFinder的配置:

打开“ckfinder\”下的用户控件config.ascx,更改其BaseUrl路径:

Html代码
  1. BaseUrl  =  "~/ckfinder/userfiles/" ;//or  BaseUrl  =  "ckfinder/userfiles/" ;  
BaseUrl = "~/ckfinder/userfiles/";//or BaseUrl = "ckfinder/userfiles/";

并且更改:

Html代码
  1. public override boolCheckAuthentication()  {  
  2.             //return false;  
  3.            return true;   
  4. }  
public override boolCheckAuthentication()  {
	        //return false;
	       return true; 
}

至此,配置工作终于完成啦。。

三、在页面应用CKEditor控件

1、在页面的<head>中添加对应的js引用:

Html代码
  1. < script   type = "text/javascript"   language = "javascript"   src = "ckfinder/ckfinder.js" > </ script >   
  2. < script   type = "text/javascript"   language = "javascript"   src = "ckeditor/ckeditor.js" > </ script >   
<script type="text/javascript" language="javascript" src="ckfinder/ckfinder.js"></script>
<script type="text/javascript" language="javascript" src="ckeditor/ckeditor.js"></script>

2、然后,在<body>中需要放置该控件的位置加入如下代码,分别有以下几种使用方法:

(1)给控件添加指定的class属性

Html代码
  1. < textarea   id = "textarea1"   name = "editor1"   class = "ckeditor" > hello! </ textarea >   
<textarea id="textarea1" name="editor1" class="ckeditor">hello!</textarea>

服务器控件:

Html代码
  1. < asp:TextBox   ID = "TextBox1"   runat = "server"   TextMode = "MultiLine"   CssClass = "ckeditor" > </ asp:TextBox >   
<asp:TextBox ID="TextBox1" runat="server" TextMode="MultiLine" CssClass="ckeditor"></asp:TextBox>

(2)注入js代码——此处js代码最好写在控件之后,也可以写在<head>中

Html代码
  1. < textarea   id = "textarea1"   name = "editor1" > hello! </ textarea >   
  2. < script   type = "text/javascript" >   
  3.         CKEDITOR.replace('editor1', { height:400, width:800 });  
  4. </ script >   
<textarea id="textarea1" name="editor1">hello!</textarea>
<script type="text/javascript">
        CKEDITOR.replace('editor1', { height:400, width:800 });
</script>

服务器控件:

Html代码
  1. < asp:TextBox   ID = "mckeditor"   runat = "server"   TextMode = "MultiLine" > </ asp:TextBox >   
  2. < script   type = "text/javascript" >   
  3.         CKEDITOR.replace('< %=mckeditor.ClientID % > ');  
  4. </ script >

来自 (http://www.ok22.org/art_detail.aspx?id=134 )

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics