在asp开发中使用FCKeditor的过程

本来一直喜欢用ewebeditor这个编辑器,主要是工具栏之类的设置方便(FCKeditor的编辑器设置太麻烦了,在js里改来改去,不直观),但由于这个编辑器的兼容性不好,语言版本也少(主要就中文版的,英文版我手上也有,不过不知道是不是官方发布的,还是人为修改的),用的版本当然是免费版,穷人,没办法。不过ewebeditor对浏览器的兼容性太差,估计也就IE内核的浏览器能用,火狐、谷歌之类的浏览器统统不支持。手上有个国外的网站,人家就是喜欢用火狐之类的浏览器,所以没办法,只能使用FCKeditor浏览器来替换。以前没用过,使用的时候居然还出现了很多问题。做个记录,方便以后使用。

1、首先当然到FCKeditor的官方网站去下载一个免费的,下载地址:http://www.fckeditor.net/download
我下载的版本是2.6.4

2、测试一下附带的例子。(习惯问题,下载一个东西,都喜欢先测试一下,然后再应用)
基本功能都好用,就是上传不好使。弹出窗口,一直显示进度条,居然还关不掉,晕死。还好刷新一下就没了。这种没任何提示的东西最麻烦,还好我用ie浏览器有个httpwatch的监视工具,打开一看才知道,虽然是asp的demo,默认的上传处理居然是php的。(有点晕,既然提供了这么多开发语言的例子,就把demo的做做完整嘛,搞得demo都跑不起来,asp的demo还用了php的页面)
解决办法:找到fckconfig.js,直接搜索php(习惯不好,不喜欢看说明,基本都自己先找,搞不懂再去看说明),找到两个看着像的地方,直接把php改成asp了
var _FileBrowserLanguage = 'php' ; // asp | aspx | cfm | lasso | perl | php | py
var _QuickUploadLanguage = 'php' ; // asp | aspx | cfm | lasso | perl | php | py

3、再尝试上传文件,提示上传功能关闭,根据提示去修改fckeditor\editor\filemanager\connectors\asp目录下面的config.asp文件
Dim ConfigIsEnabled
ConfigIsEnabled = False把False改为true

改为之后就能上传了。

既然测试OK了,那就开始使用了。

4、把编辑器的整个文件夹拷贝到网站下面,删除没用的文件(FCKeditor里的文件太多了,很多在应用的时候都是没用的,FCK应该出个清洁版和完整版)
删除的文件:
a.“_”打头的文件和文件夹都删除
b.fckeditor\editor\filemanager\connectors目录下有很多种语言的接口,没用的全部删除,我就留下asp文件夹
c.根目录下面的文件太多,jsp、php、pl什么都有,统统删除,就保留fckconfig.js、fckeditor.asp、fckeditor.js、fckstyles.xml和fcktemplates.xml
d.fckeditor\editor\lang下面没用的语言都删除了
这下终于干净多了。

5、根据提供的demo来使用编辑器
a)加入包含文件<!-- #INCLUDE file="fckeditor/fckeditor.asp" -->

b)复制代码过去

Dim sBasePath
sBasePath = Request.ServerVariables("PATH_INFO")
sBasePath = Left( sBasePath, InStrRev( sBasePath, "/_samples" ) )

Dim oFCKeditor
Set oFCKeditor = New FCKeditor
oFCKeditor.BasePath = sBasePath
oFCKeditor.Value = "<p>This is some <strong>sample text</strong>. You are using Fckeditor."
oFCKeditor.Create "FCKeditor1"

修改了一下sBasePath,反正就是获取编辑器文件夹的路径,可以直接设置也可以通过程序来获取,注意:路径如果直接设置的,虚拟目录和站点的情况不同,值也不同。所以默认的例子代码还是可取的。这种取值方式不管是虚拟目录还是站点都不会错。

6、上面的代码一加就算完事了,asp通过request.form("FCKeditor1")就能取到值了。(当然你要改名也可以)

7、那个客户的空间有点BT,IIS父路径的功能都是关闭的,所以我还需要修改一下文件的上传目录,只能上传到fckeditor\editor\filemanager\connectors\asp这个目录或者它的子目录。
找到这个目录下面的config.asp文件
Dim ConfigUserFilesPath
ConfigUserFilesPath = "/userfiles/" 修改这个值就可以了,同样需要注意一下虚拟目录和站点的路径问题。

最后编辑器可以使用了,还想美化一下,使用一下样式、设置一下工具栏、调整一下高度宽度之类的。

a)设置样式:oFCKeditor.Config("SkinPath") = sBasePath + "editor/skins/office2003/" (反正默认带了几个样式)

b)设置语言:
oFCKeditor.Config("AutoDetectLanguage") = False(记得这个是必须的,否则就是自动检测了)
oFCKeditor.Config("DefaultLanguage")    = "en"

c)设置高度:oFCKeditor.Height = "500"

d)设置工具栏:oFCKeditor.ToolbarSet = "Basic",后面的值是自己在FCKConfig.ToolbarSets的地方设置的,对照完整的那个工具栏,自己挑几个放进去,注意区分大小写。

其他一些小插曲:

由于编辑器编辑好的内容是写入到xml文件,然后在flash里读取的,所以有些html标签是不能使用的。例如加粗,只能用b,不能用strong,斜体只能用i,不能用em,FCK编辑器默认的都是strong和em,这个需要自己改一下配置(我也不知道为什么,反正试试看,有用了就行)
FCKConfig.CoreStyles =
{
 // Basic Inline Styles.
 'Bold'   : { Element : 'strong', Overrides : 'b' }, 这个地方我把strong和b换了一下位置
 'Italic'  : { Element : 'em', Overrides : 'i' },  这个地方我把em和i换了一下位置

还有一个比较郁闷的地方,最终还是没搞定,通过另类的方式来实现。FCK编辑器设置字体、颜色、大小都是通过style的方式来实现的,结果flash不能识别这个样式,必须要通过<font color="#aaa">的形式才会识别。

 'FontFace' :
 {
  Element  : 'span',
  Styles  : { 'font-family' : '#("Font")' },
  Overrides : [ { Element : 'font', Attributes : { 'face' : null } } ]
 },

 'Size' :
 {
  Element  : 'span',
  Styles  : { 'font-size' : '#("Size","fontSize")' },
  Overrides : [ { Element : 'font', Attributes : { 'size' : null } } ]
 },

 'Color' :
 {
  Element  : 'span',
  Styles  : { 'color' : '#("Color","color")' },
  Overrides : [ { Element : 'font', Attributes : { 'color' : null } } ]
 },

 

FCK上面这段就是生成那段样式代码,但怎么改都不对,最后没折了,我程序里人为把那段样式替换成<font形式

转载于:https://www.cnblogs.com/7788/archive/2009/06/16/1504414.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
FCKeditor是目前最优秀的可见即可得网页编辑器之一,它采用JavaScript编写。具备功能强大、配置容易、跨浏览器、支持多种编程语言、开源等特点。它非常流行,互联网上很容易找到相关技术文档,国内许多WEB项目和大型网站均采用了FCKeditor。 FCKeditor是一个专门使用在网页上属于开放源代码的所见即所得文字编辑器。它志于轻量化,不需要太复杂的安装步骤即可使用。 “FCKeditor”名称的“FCK” 是这个编辑器的作者的名字Frederico Caldeira Knabben的缩写。 正如MS Office在个人PC上是最普及的文本编辑器一样,FCKeditor使用最广泛的网页编辑器,所见即所得,简单易用,功能很不错。 首先需要说明的是,与通常意义上的编辑器不同,FCKeditor并不是一个需要安装的程序,或许说它是一个网页源代码更为贴切,所以,取而代之安装过程的是与网页源代码相集成的调用过程。 FCKeditor运行的环境是网页浏览器,基本上IE5.5以上,或者是其它浏览器如火狐、360、Chrome、QQ、Netscape等,都可以兼容。而它可以兼容并集成的网页代码格式也相当多,包括ASPASP.Net、PHP、Perl、Java等,支持格式之多,也是同类编辑器无法替代的。 在这一版本我们完全实现了与轻松互联网开发平台的无缝整合,在平台调用FCKeditor使用标签一样Easy(例子文件在_samples/editor目录下)。而且没给恶意攻击者留任何可能的漏洞。 另外,对重点功能也进行扩展,如上传文件和源代码高亮显示。上传文件不再需要专门的配置,直接使用即可,强化了上传图片、附件及目录管理功能,实现全汉语UI操作和实时预览。增加了插入Flash、媒体及视频功能,其操作仍然是同样地轻松。 Easy do it,轻松互联网开发平台(原WebEasy,简称轻开平台)是一个运行于JVM+HTTP(及HTTPS协议)的应用服务器开发平台。 轻开平台基于汉语的思维方式并巧妙地结合英文思维方式的优点设计了一套轻松Easy的开发规则,用java语言开发实现为一个强大的开发平台,为开发者提供了一个直接轻松面向应用的开发环境。 轻开平台同时支持使用多个数据源和不同厂商提供的数据库服务器,只要支持JDBC访问及基于SQL规范的数据库(如:MySQL、SQLServer、Oracle、DB2、Teradata、SyBase等关系型数据库及基于SQL的大数据分析系统Vertica)。轻开平台能在一个应用系统平等使用多个不同的数据库,而这只需要添加一个配置文件就轻松实现。“信息孤岛”在这儿就只剩下了一个传说! 轻开平台的低层开发语言是Java,也就是说Java能干啥轻开就能干啥,如JAVA能跨平台(操作系统)轻开就能跨平台。而开发者却不需要会Java! 轻开平台的最大优势就是Easy,基本上解决了传统开发的不能克服的由于应用需求变更而导致开发无法继续进行和前边提到的“信息孤岛”问题,基于轻开平台的直接好处是: • 加快开发进程:计算机诞生以来,软件开发一直是一项高深莫测的工作,被冠以“高科技”、“新技术”,导致信息化的门坎太高,IT技术不能普遍服务于大众,很难转化为生产力。Easy do it 正在突破这一障碍,让提出应用需求的用户直接参与互联网系统开发。只需会html和SQL,就能够完成Web应用系统开发,只需会json和SQL,就能够完成移动App服务器系统开发。这对每一位其他的行业的业务精英来说,简直就是“小菜一碟”,学会html、json和SQL语法远比进一步提高在本行业的业务水平更容易,您的智慧很快被“翻译”成互联网应用系统软件。 • 降低开发成本:无需雇佣高水平高薪的程序员,简化了需求到开发的环节; • 部署成本低:无需复杂的调试和配置; • 集成成本低:支持任何关系数据库(如:Mysql、MSSQL、DB2、Oracle……),可同时支持多个不同数据库,从源头上解决“信息孤岛”问题; • 资源成本低:PIII450/64M/10G以上PC即可高效地运行,基于轻开平台的应用系统,系统本身不再为自身庞大的体积而付出大部分资源,而是把IT资源更有效的服务于应用。 轻开平台干了些啥: 高夫数据分析App服务器:移动App服务器+大数据分析系统(Vertica),网址 http://182.92.150.191/; 通益车联网:移动App(及车载终端)服务器+大数据分析系统(Vertica),网址 http://103.249.252.247/; 达品客电子商务网:电子商务,网址 http://www.dapinke.com/; 北京简单和家官网:电子商务,网址 http://www.52jdhj.co
最近做了一个文章管理的系统,用到在线编辑器,修改了一下现在能实现音频,视频,图片,附件,Flash等文件的上传。费了好大的功夫。。 FCKeditor应用在ASP.NET上,需要两组文件,一组是FCKeditor本身,另一个是用于ASP.NET的FCKeditor控件(分为1.1和2.0两个版本,这里使用2.0版本)。 1. 将FCKeditor加入到项目 解压FCKeditor编辑器,得到文件夹fckeditor,复制此文件夹到Web应用的项目下(也可以是子孙目录下)。 解压FCKeditor控件,在其子目录bin/Release/2.0下有一个程序集。在Web应用的项目引用该程序集。 2. 在页面使用FCKeditor 有两种方式。 (1)手工编码 在页面加入ASP.NET指令: 然后在需要的地方加入FCKeditor控件: (2)集成到Visual Studio工具箱 打开一ASP.NET页面,展开Toolbox,打开右键菜单,选择“Choose Items ...”,在出现的“Choose Toolbox Items”会话框的“.NET Framework Components”选项卡选择“Browse”,找到并选FCKeditor程序集,打开后回到“Choose Toolbox Items”窗口,点击“OK”,完成控件导入。 这时,在Toolbox的General分类下出现了一个名为FCKeditor的控件,可以像使用Visual Studio内置控件一样使用它。 3. 配置FCKeditor编辑器路径 在页面使用的是FCKeditor控件,该控件需要知道FCKeditor编辑器文件组的路径。有两种配置方法。 (1)配置web.config 在appSettings配置节加入 使用这种配置方法后,对于项目任何一个页面用到的FCKeditor控件,都不用再配置其BasePath属性。 (2)直接对用到的FCKeditor控件进行配置 在页面代码设置FCKeditor的属性BasePath为FCKeditor编辑器文件组的路径,或者在Page_Init事件处理器设置其BasePath的值。 4. 配置FCKeditor编辑器文件上传路径 在web.config的appSettings配置节加入 或者 这样,就完成了FCKeditorASP.NET页面的集成工作。 二、配置FCKeditor 按照FCKeditor的默认配置,可以完成一些常用的HTML可视化编辑工作,但在实际应用,还需要对其做进一步的配置。FCKeditor控件的可配置属性不多,且配置后只能作用于一个单一实例。实际上,需要对FCKeditor编辑器文件组的通用配置文件/fckconfig.js和ASP.NET专用文件上传管理代码文件/editor/filemanager/connectors/aspx/config.ascx进行配置。 1. 配置控件语言 FCKeditor是自动探测浏览器所使用的语言编码的,其默认语言是英文。修改配置行"FCKConfig.DefaultLanguage = 'en';"为'zh-cn',采用文为默认语言。 2. 配置控件应用技术 FCKeditor默认是用于php技术的。修改配置行"var _FileBrowserLanguage = 'php';"和"var _

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值