KingCMS中Fckeditor默认源代码编辑模式【转】

有人问Fckeditor能不能默认的打开就是源代码编辑模式,而不是可视化模式,我记得是在fckconfig.js这个文件里编辑就可以了,结果找了半天的确没找到这个属性,于是再看了看Fckeditor中调用这个模式的代码,修改了下KingCMS程序便可以实现

KingCMS中修改page/system/fun.asp中,搜索  set ofckeditor=nothing 大概在1218行,在之前加入下面这段话

    Il"<script type=""text/javascript"">function FCKeditor_OnComplete( editorInstance )"
    Il"{   editorInstance.SwitchEditMode();}</script>"

这样默认的就是源代码编辑模式。

再贴上FCKeditor手册,以后方便查阅。

FCK编辑器使用手册

配置手册中文教程详细说明 
性能 
首先,FCKEDITOR的性能是非常好的,用户只需很少的时间就可以载入 FCKEDITOR所需文件.对于其他在线编辑器来说,这几乎是个很难解决的难题,因为在开启编辑器时需要装载太多的文件.比如CUTEEDITOR,虽 然功能比FCKEDITOR还要强大,可是,它本身也够庞大了,至于FREETEXTBOX等,其易用性与FCKEDITOR相比,尚有差距,可以 说,FCKEDITOR是一个别具匠心的在线编辑器,它里面融入了作者高深的面向对象的JAVASCRIPT功力,集易用性与强大的功能与一体.

.与编辑器相关的所有图像,脚本以及调用页 
.语言文件 
.编辑器的皮肤文件 
.工具样的贴图等 
这些将导致在服务器和客户端间产生相当的流量.如果有许多文件被调用,那么即便每个文件很小.也会让用户等得不耐烦. 
装载顺序 
从2.0版开始,编辑器按以下步骤装载资源: 
.基本页(就是编辑器所在页)以及装入编辑器的JS脚本 
.用来建立编辑器的脚本 
.编辑器的语言和皮肤. 
.建立编辑器. 
.载入预置的编辑文档内容. 
.从现在开始,用户可以阅读和编辑文档了,不过,拖拽支持以及工具栏都是不可用的 
.载入编辑器引擎脚本 
.建立工具栏,并且可用 
.从现在开始,编辑器的所有功能都已经完整 
.载入工具栏图标

脚本压缩 
在打包任何新版本时,编辑器的JS脚本将会进行预处理.预处理步骤如下: 
.移除所有代码注释 
.移除所有无用的空白字符. 
.将脚本合并成几个文件 
使用上面的方法,我们可以将脚本文件的大小压缩到原来的50%. 
压缩后,原始的代码仍然存在于一个名为_Source的文件夹中

如何打包? 
编辑器已经自带了打包程序,它位于FCKEDITOR的根文件夹中_PACKAGER文件夹中,名为Fckeditor.Packager.exe,将其复制到FCKEDITOR根文件夹中并运行,即可自动将JS脚本打包并压缩 
需要注意的是该程序是一个.NET程序,必须安装.NET FRAMEWORK才能使用

想要获取支持? 
如果你捐赠15000欧元,你就可以获得1年的免费技术支持(比较贵的说,相当于人民币15万,不过西欧的费用相当惊人)

如何安装? 
1.下载最新版的FCKEDITOR 
2.解压缩到你的站点根文件夹中名为FCKEDITOR的文件夹中(名称必须为FCKEDITOR,因为配置文件中已经使用此名称来标示出FCKEDITOR的位置) 
3.现在,编辑器就可以使用了,如果想要查看演示,可以按下面方法访问: 
http://<your-site>/FCKeditor/_samples/default.html 
注意:你可以将FCKEDITOR放置到任何文件夹,默认情况下,将其放入到FCKEDITOR文件夹是最为简单的方法.如果你放入的文件夹使用别的名称,请修改配置文件夹中编辑器BasePath参数,如下所示: 
oFckeditor.BasePath="/Components/fckeditor/"; 
另外,FCKEDITOR文件夹中所有以下划线开头的文件夹及文件,都是可选的,可以安全的从你的发布中删除.它们并不是编辑器运行时必需的

如何将FCKEDITOR整合进我的页面? 
由于目前的版本提供的FCKEDITOR仅提供了JAVASCRIPT式的整合,因此,这里仅讲述如何应用JAVASCRIPT来整合FCKEDITOR到站点中,当然,其他各种语言的整合,你可以参考_samples文件夹中的例子来完成 
1,假如编辑器已经安装在你的站点的/FCKEDITOR/文件夹下.那么,第一步我们需要做的就是在页面的HEAD段中放入SCRIPT标记以引入JAVASCRIPT整合模块.例如: 
<script type="text/javascript" src="/fckeditor/fckeditor.js"></script> 
其中路径是可更改的 
2,现在,FCKEDITOR类已经可以使用了.有两个方法在页面中建立一个FCKEDITOR编辑器: 
方法1:内联方式(建议使用):在页面的FORM标记内需要插入编辑器的地方置入以下代码: 
script type="text/javascript"> 
var oFCKeditor = new FCKeditor( 'FCKeditor1' ) ; 
oFCKeditor.Create() ; 
</script> 
方法2:TEXTAREA标记替换法(不建议使用):在页面的ONLOAD事件中,添加以下代码以替换一个已经存在的TEXTAREA标记 
<html> 
<head> 
<script type="text/javascript"> 
window.onload = function() 

var oFCKeditor = new FCKeditor( 'MyTextarea' ) ; 
oFCKeditor.ReplaceTextarea() ; 

</script> 
</head> 
<body> 
<textarea id="MyTextarea" name="MyTextarea">This is <b>the</b> initial value.</textarea> 
</body> 
</html> 
3.现在,编辑器可以使用了

FCKEDITOR类参考: 
下面是用来在页面中建立编辑器的FCKEDITOR类的说明

构造器: 
FCKeditor( instanceName[, width, height, toolbarSet, value] ) 
instanceName:编辑器的唯一名称(相当于ID) 
WIDTH:宽度 
HEIGHT:高度 
toolbarSet:工具条集合的名称 
value:编辑器初始化内容

属性: 
instanceName:编辑器实例名 
width:宽度,默认值为100% 
height:高度,默认值是200 
ToolbarSet:工具集名称,参考FCKCONFIG.JS,默认值是Default 
value:初始化编辑器的HTML代码,默认值为空 
BasePath:编辑器的基路径,默认为/Fckeditor/文件夹,注意,尽量不要使用相对路径.最好能用相对于站点根路径的表示方法,要以/结尾 
CheckBrowser:是否在显示编辑器前检查浏览器兼容性,默认为true 
DisplayErrors:是否显示提示错误,默为true;

集合: 
Config[Key]=value; 
这个集合用于更改配置中某一项的值,如 
oFckeditor.Config["DefaultLanguage"]="pt-br";

方法: 
Create() 
建立并输出编辑器

RepaceTextArea(TextAreaName) 
用编辑器来替换对应的文本框

如何配置FCKEDITOR? 
FCKEDITOR提供了一套用于定制其外观,特性及行为的设置集.主配置文件名为Fckconfig.js 
你既可以编辑主配置文件,也可以自己定义单独的配置文件.配置文件使用JAVASCRIPT语法.

修改后,在建立编辑器时,可以使用以下语法: 
var oFCKeditor = new FCKeditor( 'FCKeditor1' ) ; 
oFCKeditor.Config['CustomConfigurationsPath'] = '/myconfig.js' ; 
oFCKeditor.Create() ;

提醒:当你修改配置后,请清空浏览器缓存以查看效果

配置选项: 
AutoDetectLanguage=true/false 自动检测语言 
BaseHref="" _fcksavedurl="""" 相对链接的基地址 
ContentLangDirection="ltr/rtl" 默认文字方向 
ContextMenu=字符串数组,右键菜单的内容 
CustomConfigurationsPath="" 自定义配置文件路径和名称 
Debug=true/false 是否开启调试功能,这样,当调用FCKDebug.Output()时,会在调试窗中输出内容 
DefaultLanguage="" 缺省语言 
EditorAreaCss="" 编辑区的样式表文件 
EnableSourceXHTML=true/false 为TRUE时,当由可视化界面切换到代码页时,把HTML处理成XHTML 
EnableXHTML=true/false 是否允许使用XHTML取代HTML 
FillEmptyBlocks=true/false 使用这个功能,可以将空的块级元素用空格来替代 
FontColors="" 设置显示颜色拾取器时文字颜色列表 
FontFormats="" 设置显示在文字格式列表中的命名 
FontNames="" 字体列表中的字体名 
FontSizes="" 字体大小中的字号列表 
ForcePasteAsPlainText=true/false 强制粘贴为纯文本 
ForceSimpleAmpersand=true/false 是否不把&符号转换为XML实体 
FormatIndentator="" 当在源码格式下缩进代码使用的字符 
FormatOutput=true/false 当输出内容时是否自动格式化代码 
FormatSource=true/false 在切换到代码视图时是否自动格式化代码 
FullPage=true/false 是否允许编辑整个HTML文件,还是仅允许编辑BODY间的内容 
GeckoUseSPAN=true/false 是否允许SPAN标记代替B,I,U标记 
IeSpellDownloadUrl=""下载拼写检查器的网址 
ImageBrowser=true/false 是否允许浏览服务器功能 
ImageBrowserURL="" 浏览服务器时运行的URL 
ImageBrowserWindowHeight="" 图像浏览器窗口高度 
ImageBrowserWindowWidth="" 图像浏览器窗口宽度 
LinkBrowser=true/false 是否允许在插入链接时浏览服务器 
LinkBrowserURL="" 插入链接时浏览服务器的URL 
LinkBrowserWindowHeight=""链接目标浏览器窗口高度 
LinkBrowserWindowWidth=""链接目标浏览器窗口宽度 
Plugins=object 注册插件 
PluginsPath="" 插件文件夹 
ShowBorders=true/false 合并边框 
SkinPath="" 皮肤文件夹位置 
SmileyColumns=12 图符窗列数 
SmileyImages=字符数组 图符窗中图片文件名数组 
SmileyPath="" 图符文件夹路径 
SmileyWindowHeight 图符窗口高度 
SmileyWindowWidth 图符窗口宽度 
SpellChecker="ieSpell/Spellerpages" 设置拼写检查器 
StartupFocus=true/false 开启时FOCUS到编辑器 
StylesXmlPath="" 设置定义CSS样式列表的XML文件的位置 
TabSpaces=4 TAB键产生的空格字符数 
ToolBarCanCollapse=true/false 是否允许展开/折叠工具栏 
ToolbarSets=object 允许使用TOOLBAR集合 
ToolbarStartExpanded=true/false 开启是TOOLBAR是否展开 
UseBROnCarriageReturn=true/false 当回车时是产生BR标记还是P或者DIV标记

如何自定义样式列表呢? 
FCKEDITOR的样式工具栏中提供了预定义的样式,样式是通过XML文件定义的,默认的XML样式文件存在于FCkEditor根文件夹下的FckStyls.xml文件中 
这个XML文件的结构分析如下: 
<?xml version="1.0" encoding="utf-8" ?> 
<Styles > 
<Style name="My Image" element="img"> 
<Attribute name="style" value="padding: 5px" /> 
<Attribute name="border" value="2" /> 
</Style > 
<Style name="Italic" element="em" /> 
<Style name="Title" element="span"> 
<Attribute name="class" value="Title" /> 
</Style > 
<Style name="Title H3" element="h3" /> 
</Styles>

每一个STYLE标记定义一种样式,NAME是显示在下拉列表中的样式名,ELEMENT属性指定此样式所适用的对象,因为FCKEDITOR中的样式是上下文敏感的,也就是说,选择不同的对象,仅会显示针对这类对象定义的样式

拼写检查 
FCKEDITOR 带了两种拼写检查工具,一种是ieSpell,默认情况下使用这种,使用这种方式的拼写检查,要求客户下载并安装iespell这个小软件,另外,也提供 SpellPager的方式来进行拼写检查,不过,由于SPELLPAGER是由PHP编写的服务器端脚本,因此,要求你的WEB服务器必须支持PHP脚 本语言方可 
更改拼写检查器的方式请参见有关配置文件的详细说明

压缩脚本 
为了提供脚本载入的效率,FCKEDITOR采用以下方法对脚本尽量压缩以减少脚本尺寸: 
1,移除掉脚本中的注释 
2.移除掉脚本中所有无意义的空白 
另外,FCKEDITOR还提供了一个专门用于压缩脚本的工具以便 你在发布时能减小文件尺寸, 
你可以将_Packager文件夹中的Fckeditor.Packager.exe复制到FCKEDITOR根文件夹来运行并压缩脚本

本地化FCKEDITOR 
如果FCKEDITOR没有提供您所需要的语言(实际上全有了),你也可以自行制作新的语言 
,你只需要复制出EN.JS,然后在其基础上进行翻译.另外,语言名称与对应的脚本文件名必须遵循RFC 3066标准,但是,需要小写,例如:Portuguess Language对应的脚本文件名必须为pt.js 
如果需要针对某个国家的某种语系,则可以在语系缩写后加上横线及国家缩写即可

在使用时,系统会自动侦测客户端语系及国别而运用适当的界面语言.

当建立一种新的语言后,你必须在"Edit/lang/fcklanguagemanager.js"中为其建立一个条目,如下所示: 
FCKLanguageManager.AvailableLanguages = 
{

en : 'English', 
pt : 'Portuguese' 
}

需要提醒的是,文件必须保存为UTF-8格式

如何与服务器端脚本进行交互? 
请查看例子以得到相关内容

另外,在ASP.NET中以以下步骤使用 
1.把FCKEDITOR添中到工具箱 
2.托拽FCKEDITOR控件到页面 
3.为其指定名称 
4.FCKEDITOR 类的所有属性不光可以在代码中使用,而且可以作为FCKEDITOR控件的属性直接使用,例如,要改变皮肤,可以在UI页面中指定 SkinPath="/fckeditor/editor/skins/office2003"即可,其实FCKEDITOR的ASP.NET版本可以做 得更好,你可以找到FCKEDITOR ASP.NET 2.1的源文件,然后修改该控件的设计,为其暴露更多有用的属性,重新编译即可 
5,POSTBACK后的数据,使用FCKEDITOR控件的value属性获得 
6. 由于默认状态下,ASP.NET不允许提交含有HTML及JAVASCRIPT的内容,因此,你必须将使用FCKEDITOR的页面的 ValidateRequest设为false.(<%@page validteRequest="false" %>即可)

 

附: 
一、如何设置上传文件语言

把FCKeditor根目录下面的fckconfig.js文件里

var _FileBrowserLanguage = 'asp' ; // asp | aspx | cfm | lasso | perl | php | py 
var _QuickUploadLanguage = 'asp' ; // asp | aspx | cfm | lasso | php

这两行中改成您所需要调用的编辑器语言,如用asp.net则改为aspx;

二、解决中文的问题: 
在web.config中加入: 
<globalization requestEncoding="GB2312" responseEncoding="GB2312"/> 
这样设置后可以显示中文的文件,但URL地址也是中文的; 
如果服务器对中文地址的解析不好,可能导致图片无法浏览; 
所以修改:editor\filemanager\browser\default\frmresourceslist.html 
中的OpenFile函数,把 
window.top.opener.SetUrl( fileUrl ) ; 
修改为: 
window.top.opener.SetUrl( escape(fileUrl) ) ;

三.设置上传的目录: 
1:在web.config中设置: 
<appSettings> 
<add key="FCKeditor:UserFilesPath" value="/fck/UpLoad/" /> 
</appSettings>

2:在Session中设置: 
在editor\filemanager\browser\default\connectors\aspx\connector.aspx中加入以下代码: 
<script runat="server" language="C#"> 
protected override void OnInit(EventArgs e) 

Session["FCKeditor:UserFilesPath"] = "/fck/UpLoad1/"; 

</script>

如何在asp.net中动态设置上传图片的路径?

1.在javascript中修改FCKConfig.ImageBrowserURL的值,修改方式如下: 
FCKConfig.ImageBrowserURL += "?Path=要上传的文件路径"; 
如:要把文件上传到站点根目录的UploadFile文件夹中,则设置为: 
FCKConfig.ImageBrowserURL += "?Path=/UploadFile"; 
2.在"editor\filemanager\browser\default\connectors\aspx\connector.aspx"文件最后中增加以下程序: 
<script runat="server" language="C#"> 
protected override void OnInit(EventArgs e) 

if( Request.QueryString["Path"]==null ){ 
Session["FCKeditor:UserFilesPath"] = "/UpLoadFiles/"; //设置默认值 
}else{ 
Session["FCKeditor:UserFilesPath"] = Request.QueryString["Path"]; 


</script>


-------------------------------------------------------------------------------- 
多环境下的配置和使用技巧 
--------------------------------------------------------------------------------

在fckeditor中添加右键菜单 
现在网上介绍FCKEditor如何配置,如何精简的例子非常之多,如有需要可以google一下,此处不必赘述。现在介绍一下,如何自定义此编辑器,暂包括如何添加工具条上的item,产生响应,添加右键菜单。IT SEEMS VERY EASY!

闲言少叙,书归正传。 
一、自定义右键菜单: 
1、 首先,在editor/lang/zh-cn.js里添加你所要添加的工具条item的名字,此文件定义了一个FCKLang变量,仿照里边的格式写哦, 如:First: "第一",注意,如果是不在倒数第二行(倒数第一行是“}”),后边的这个逗号是一定要有的,不然网页中不会出现编辑器,笔者曾经犯过如此低级的错误,待 醒悟后,找一僻静之所大嘴巴子招呼;呵呵,我们是中国人,自然在冒号后对应汉语,这也是将来在网页中显示的内容。 
2、 之后,在editor/_source/internals/fckcommands.js 里新建一个command:case 'First': oCommand = new FCKFirstCommand ( 'First', FCKLang.First); break注意那个红色字体的FCKFirstCommand了么?这个是一个自定义的command,稍候将讨论它。 
3、 然后,在editor/_source/internals/fckcontextmenu.js 添加一个context menu 。 在case 'Generic' : 下面添加如下: oGroup.Add( new FCKContextMenuItem( this, 'First', FCKLang.First, true ) ) ; 其中第四个布尔类型的参数,如果指定为true,说明菜单有图标,反之则无。在此,我指明了我所自定义的菜单是有图标的,那么我就应该把图标放在 editor\skins\xxx\toolbar目录下,其中xxx就是你在你的配置文件里选择的编辑器的皮肤,但是我们的图标命名可是有学问的,必须 是如FCKContextMenuItem构造函数(且这么叫它)第二个字符串参数的小写字母形式,如,这里我的图标被命名为first.gif了。 Ok,如此右键菜单就被添加上去了,运行你的网页,看看FCKEditor是否奏效?如果不奏效的话就要重新参考此文喽^_^。 
4、然后,还有最关键的一步:用editor下的fckeditor.original.html网页的内容代替fckeditor.html的内容,同时不要忘记备份fckeditor.html文件! 
5、现在开始讨论步骤2中的FCKFirstCommand。菜单添加上其了,你总得让丫拥有什么功能吧?好,在editor/_source/commandclasses/fck_othercommands.js里新建这个类: 
四大 FCKeditor 实战应用技巧

一 般建立好类后,还要建立两个静态函数:xxx .prototype.Execute,xxx .prototype.GetState。前者是事件处理函数,即点击了该右键菜单所要执行的功能全部写在这个函数,后者返回菜单的状态(可用?不可 用?)。在此为了演示,我们实现一个最简单的功能: FCKPageCommand.prototype.Execute = function(){ window.alert("It works!");}够简单吧,只是不疼不痒的弹出一个提示框。 当然,这里我们也可以不用自定义的FCKFirstCommand,而直接用FCKEditor定义好的command,比如 FCKDialogCommand,它也定义在fck_othercommands.js里,当然如果这样的话,弹出的会是一个dialog。 再次运行网页,右击,点击你的自定义菜单,是否弹出提示框呢?

FCKeditor至今已经到了2.3.1版本了,对于国内的WEB开 发者来说,也基本上都已经“闻风知多少”了,很多人将其融放到自己的项目中,更有很多大型的网站从中吃到了甜头。今天开始,我将一点点的介绍自己在使用 FCKeditor过程中总结的一些技巧,当然这些其实是FCK本来就有的,只是很多人用FCK的时候没发现而已 :P

1、适时打开编辑器

很多时候,我们在打开页面的时候不需要直接打开编辑器,而在用到的时候才打开,这样一来有很好的用户体验,另一方面可以消除FCK在加载时对页面打开速度的影响,如图所示

 

点击“Open Editor"按钮后才打开编辑器界面

 

 


实现原理:使用JAVASCRIPT版的FCK,在页面加载时(未打开FCK),创建一个隐藏的TextArea域,这个TextArea的name和 ID要和创建的FCK实例名称一致,然后点击"Open Editor"按钮时,通过调用一段函数,使用FCK的ReplaceTextarea()方法来创建FCKeditor,代码如下

<script type="text/javascript"> 
<!-- 
function showFCK(){ 
var oFCKeditor = new FCKeditor( 'fbContent' ) ; 
oFCKeditor.BasePath = '/FCKeditor/' ; 
oFCKeditor.ToolbarSet = 'Basic' ; 
oFCKeditor.Width = '100%' ; 
oFCKeditor.Height = '200' ; 
oFCKeditor.ReplaceTextarea() ; 

//--> 
</script> 
<textarea name="fbContent" id="fbContent"><textarea>


2、使用FCKeditor 的 API

FCKeditor编辑器,提供了非常丰富的API,用于给End User实现很多想要定制的功能,比如最基本的数据验证,如何在提交的时候用JS判断当前编辑器区域内是否有内容,FCK的API提供了GetLength()方法;

再比如如何通过脚本向FCK里插入内容,使用InsertHTML()等;

还有,在用户定制功能时,中间步骤可能要执行FCK的一些内嵌操作,那就用ExecuteCommand()方法。

详细的API列表,请查看FCKeditor的Wiki。而常用的API,请查看FCK压缩包里的_samples/html/sample08.html。此处就不贴代码了。

3、外联编辑条(多个编辑域共用一个编辑条)

这个功能是2.3版本才开始提供的,以前版本的FCKeditor要在同一个页面里用多个编辑器的话,得一个个创建,现在有了这个外联功能,就不用那么麻烦了,只需要把工具条放在一个适当的位置,后面就可以无限制的创建编辑域了,如图:

 

要实现这种功能呢,需要先在页面中定义一个工具条的容器:<divid="xToolbar"></div>,然后再根据这个容器的id属性进行设置。

ASP实现代码:   <div id="fckToolBar"></div> 
<% 
Dim oFCKeditor 
Set oFCKeditor = New FCKeditor 
with oFCKeditor 
.BasePath = fckPath 
.Config("ToolbarLocation") = "Out:fckToolBar"

.ToolbarSet = "Basic" 
.Width = "100%" 
.Height = "200"

.Value = "" 
.Create "jcontent"

.Height = "150" 
.Value = "" 
.Create "jreach" 
end with 
%>


JAVASCRIPT实现代码: <div id="xToolbar"></div> 
FCKeditor 1: 
<script type="text/javascript"> 
<!-- 
// Automatically calculates the editor base path based on the _samples directory. 
// This is usefull only for these samples. A real application should use something like this: 
// oFCKeditor.BasePath = '/fckeditor/' ; // '/fckeditor/' is the default value. 
var sBasePath = document.location.pathname.substring(0,document.location.pathname.lastIndexOf('_samples')) ;

var oFCKeditor = new FCKeditor( 'FCKeditor_1' ) ; 
oFCKeditor.BasePath = sBasePath ; 
oFCKeditor.Height = 100 ; 
oFCKeditor.Config[ 'ToolbarLocation' ] = 'Out:parent(xToolbar)' ; 
oFCKeditor.Value = 'This is some <strong>sample text</strong>. You are using FCKeditor.' ; 
oFCKeditor.Create() ; 
//--> 
</script> 
<br /> 
FCKeditor 2: 
<script type="text/javascript"> 
<!-- 
oFCKeditor = new FCKeditor( 'FCKeditor_2' ) ; 
oFCKeditor.BasePath = sBasePath ; 
oFCKeditor.Height = 100 ; 
oFCKeditor.Config[ 'ToolbarLocation' ] = 'Out:parent(xToolbar)' ; 
oFCKeditor.Value = 'This is some <strong>sample text</strong>. You are using FCKeditor.' ; 
oFCKeditor.Create() ; 
//--> 
</script>


此部分的详细DEMO请参照: 
_samples/html/sample11.html 
_samples/html/sample11_frame.html

4、文件管理功能、文件上传的权限问题

一直以后FCKeditor的文件管理部分的安全是个值得注意,但很多人没注意到的地方,虽然FCKeditor在各个Release版本中一直存在的一个功能就是对上传文件类型进行过滤,但是她没考虑过另一个问题:到底允许谁能上传?到底谁能浏览服务器文件?

之前刚开始用FCKeditor时,我就出现过这个问题,还好NetRube(FCKeditor中文化以及FCKeditor ASP版上传程序的作者)及时提醒了我,做法是去修改FCK上传程序,在里面进行权限判断,并且再在fckconfig.js里把相应的一些功能去掉。但 随之FCK版本的不断升级,每升一次都要去改一次配置程序fckconfig.js,我发觉厌烦了,就没什么办法能更好的控制这种配置么?事实上,是有 的。

在fckconfig.js里面,有关于是否打开上传和浏览服务器的设置,在创建FCKeditor时,通过程序来判断是否创建有上传浏览功能的编辑器。首先,我先在fckconfig.js里面把所有的上传和浏览设置全设为false,接着我使用的代码如下:

ASP版本: <% 
Dim oFCKeditor 
Set oFCKeditor = New FCKeditor 
with oFCKeditor 
.BasePath = fckPath 
.Config("ToolbarLocation") = "Out:fckToolBar" 
if request.cookies(site_sn)("issuper")="yes" then 
.Config("LinkBrowser") = "true" 
.Config("ImageBrowser") = "true" 
.Config("FlashBrowser") = "true" 
.Config("LinkUpload") = "true" 
.Config("ImageUpload") = "true" 
.Config("FlashUpload") = "true" 
end if 
.ToolbarSet = "Basic" 
.Width = "100%" 
.Height = "200" 
.Value = "" 
.Create "jcontent" 
%>


JAVASCRIPT版本: var oFCKeditor = new FCKeditor( 'fbContent' ) ; 
<%if power = powercode then%> 
oFCKeditor.Config['LinkBrowser'] = true ; 
oFCKeditor.Config['ImageBrowser'] = true ; 
oFCKeditor.Config['FlashBrowser'] = true ; 
oFCKeditor.Config['LinkUpload'] = true ; 
oFCKeditor.Config['ImageUpload'] = true ; 
oFCKeditor.Config['FlashUpload'] = true ; 
<%end if%> 
oFCKeditor.ToolbarSet = 'Basic' ; 
oFCKeditor.Width = '100%' ; 
oFCKeditor.Height = '200' ; 
oFCKeditor.Value = '' ; 
oFCKeditor.Create() ;

 


FCKPageCommand.prototype.Execute = function() 

window.alert("It works!"); 
}

 


FCKeditor在ASP环境中配置使用

先说一下我的测试环境:XPSP2,IIS5.1,FCKeditor2.0

在IIS上建立一个新的站点,我直接取名为FCKeditor 
在DW里建立一个相对应的站点,测试服务器为本机,支持VBScript 
下载FCKeditor2.0,这个东西是开源的,网上能下到的地方很多,自己找去……

下载下来的应该是压缩包,解压到FCKeditor站点根目录,什么都不需要更改,直接就可以开始调用了。等你会了的时候,会发现简单得要死去!

在站点根目录下,新建一个index.asp页面,<body>段内加如下代码(调用编辑器):

<% 
Dim oFCKeditor 
Set oFCKeditor = New FCKeditor 
oFCKeditor.BasePath = "/FCKeditor/" //设置编辑器的路径,我站点根目录下的一个目录 
oFCKeditor.ToolbarSet = "Default" 
oFCKeditor.Width = "100%" 
oFCKeditor.Height = "600"

oFCKeditor.Value = "" //这个是给编辑器初始值 
oFCKeditor.Create "logbody" //以后编辑器里的内容都是由这个logbody取得,命名由你定

%>

加了这一段别忘了在index.asp前面第二行加上

<!--#include file="FCKeditor/fckeditor.asp" -->

把fckeditor.asp包含进来。切记切记!

就这么简单!

现在你只要把这个编辑器当成一个控件来使用,提取它的数据时用:request("logbody")

现在松口气吧。测试成功了 

转载:http://www.s-un.cn/Work/KingCMS-Fckeditor-EditMode.shtml

转载于:https://www.cnblogs.com/Relict/articles/2293718.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值