fckeditor配置详解

使用配置设置:

1. FCKConfig.CustomConfigurationsPath = '' ; // 自定义配置文件路径和名称       
2. FCKConfigFCKConfig.EditorAreaCSS = FCKConfig.BasePath + 'css/fck_editorarea.css'; // 编辑区的样式表文件       
3. FCKConfig.EditorAreaStyles = '' ; // 编辑区的样式表风格       
4. FCKConfig.ToolbarComboPreviewCSS =''; //工具栏预览CSS       
5. FCKConfig.DocType = '' ;//文档类型       
6. FCKConfig.BaseHref = ''; // 相对链接的基地址       
7. FCKConfig.FullPage = false ; //是否允许编辑整个HTML文件,还是仅允许编辑BODY间的内容       
8. FCKConfig.StartupShowBlocks = false ;//决定是否启用"显示模块"       
9. FCKConfig.Debug = false ;//是否开启调试功能       
10. FCKConfigFCKConfig.SkinPath = FCKConfig.BasePath + 'skins/default/' ; //皮肤路径       
11. FCKConfig.PreloadImages=... //预装入的图片       
12. FCKConfigFCKConfig.PluginsPath = FCKConfig.BasePath + 'plugins/' ; //插件路径       
13. FCKConfig.AutoDetectLanguage = true ; //是否自动检测语言       
14. FCKConfig.DefaultLanguage   = 'zh-cn' ; //默认语言       
15. FCKConfig.ContentLangDirection = 'ltr' ; //默认的文字方向,可选"ltr/rtl",即从左到右或从右到左       
16. FCKConfig.ProcessHTMLEntities = true ; //处理HTML实体       
17. FCKConfig.IncludeLatinEntities = true ; //包括拉丁文       
18. FCKConfig.IncludeGreekEntities = true ;//包括希腊文       
19. FCKConfig.ProcessNumericEntities = false ;//处理数字实体       
20. FCKConfig.AdditionalNumericEntities = '' ;   //附加的数字实体       
21. FCKConfig.FillEmptyBlocks = true ; //是否填充空块       
22. FCKConfig.FormatSource   = true ; //在切换到代码视图时是否自动格式化代码       
23. FCKConfig.FormatOutput   = true ; //当输出内容时是否自动格式化代码       
24. FCKConfig.FormatIndentator = '    ' ; //当在源码格式下缩进代码使用的字符       
25. FCKConfig.StartupFocus = false ; //开启时焦点是否到编辑器,即打开页面时光标是否停留在fckeditor上       
26. FCKConfig.ForcePasteAsPlainText = false ; //是否强制粘贴为纯文件内容       
27. FCKConfig.AutoDetectPasteFromWord = true ; //是否自动探测从word粘贴文件,仅支持IE       
28. FCKConfig.ShowDropDialog = true ;//是否显示下拉菜单       
29. FCKConfig.ForceSimpleAmpersand = false ;//是否不把&符号转换为XML实体       
30. FCKConfig.TabSpaces   = 0 ;//按下Tab键时光标跳格数,默认值为零为不跳格       
31. FCKConfig.ShowBorders = true ;//合并边框       
32. FCKConfig.SourcePopup = false ;//弹出       
33. FCKConfig.ToolbarStartExpanded = true ;//启动fckeditor工具栏默认是否展开       
34. FCKConfig.ToolbarCanCollapse = true ;//是否允许折叠或展开工具栏       
35. FCKConfig.IgnoreEmptyParagraphValue = true ;//是否忽略空的段落值       
36. FCKConfig.FloatingPanelsZIndex = 10000 ;//浮动面板索引       
37. FCKConfig.HtmlEncodeOutput = false ;//是否将HTML编码输出       
38. FCKConfig.TemplateReplaceAll = true ;//是否替换所有模板       
39. FCKConfig.ToolbarLocation = 'In' ;//工具栏位置,       
40. FCKConfig.CustomConfigurationsPath = '' ; // 自定义配置文件路径和名称       
41. FCKConfigFCKConfig.EditorAreaCSS = FCKConfig.BasePath + 'css/fck_editorarea.css'; // 编辑区的样式表文件       
42. FCKConfig.BaseHref = ''; // 相对链接的基地址       
43. FCKConfig.Debug = true/false; // 是否开启调试功能,当调用FCKDebug.Output()时,会在调试窗中输出内容       
44. FCKConfigFCKConfig.SkinPath = FCKConfig.BasePath + 'skins/default/'; // 设置皮肤       
45. FCKConfig.AutoDetectLanguage = true/false ; // 是否自动检测语言       
46. FCKConfig.DefaultLanguage = 'zh-cn' ; // 设置默认语言       
47. FCKConfig.ContentLangDirection = 'ltr/rtr'; // 默认文字方向,ltr左,rtr右       
48. FCKConfig.FillEmptyBlocks = true/false ; // 使用这个功能,可以将空的块级元素用空格来替代       
49. FCKConfig.FormatSource = true/false; // 切换到代码视图时,是否自动格式化代码       
50. FCKConfig.FormatOutput = true/false; // 当输出内容时是否自动格式化代码       
51. FCKConfig.FormatIndentator = ""; // 当在“源码格式”下缩进代码使用的字符       
52. FCKConfig.GeckoUseSPAN = true/false; // 是否允许SPAN标记代替B,I,U标记       
53. FCKConfig.StartupFocus = true/false; // 开启时是否FOCUS到编辑器       
54. FCKConfig.ForcePasteAsPlainText = true/false;// 强制粘贴为纯文本       
55. FCKConfig.ForceSimpleAmpersand = true/false; // 是否不把&符号转换为XML实体       
56. FCKConfig.TabSpaces = 0/1; // TAB是否有效       
57. FCKConfig.TabSpaces = 4; // TAB键产生的空格字符数       
58. FCKConfig.ShowBorders = true/false; // 是否合并边框       
59. FCKConfig.ToolbarStartExpanded = true/false; // 页面载入时,工具栏是否展开,点“展开工具栏”时才出现       
60. FCKConfig.ToolBarCanCollapse = true/false; // 是否允许展开折叠工具栏       
61. FCKConfig.ToolbarSets = object ; // 编辑器的工具栏,可以自行定义,删减,可参考已存在工具栏       
62. FCKConfig.EnterMode = 'p'; // 编辑器中直接回车,在代码中生成,可选为p | div | br       
63. FCKConfig.ShiftEnterMode = 'br'; // 编辑器中Shift+回车,在代码中生成,可选为p | div | br       
64. FCKConfig.ContextMenu = 字符串数组; // 右键菜单的内容       
65. FCKConfig.FontColors = ""; // 文字颜色列表       
66. FCKConfig.FontNames = ""; // 字体列表       
67. FCKConfig.FontSizes = ""; // 字号列表       
68. FCKConfig.FontFormats = ""; // 文字格式列表       
69. FCKConfig.StylesXmlPath = ""; // CSS样式列表的XML文件的位置       
70. FCKConfig.TemplatesXmlPath = ""; // 模版的XML文件位置       
71. FCKConfig.SpellChecker = "ieSpell/Spellerpages"; // 拼写检查器       
72. FCKConfig.IeSpellDownloadUrl = ""; // 下载拼写检查器的网址       
73. FCKConfigFCKConfig.SmileyPath = FCKConfig.BasePath + 'images/smiley/msn/'; // 表情文件存放路径       
74. FCKConfig.SmileyImages = ''; // 表情文件名称列表,具体参考默认设置       
75. FCKConfig.SmileyColumns = 8; // 表情窗口显示表情列数       
76. FCKConfig.SmileyWindowWidth = 320; // 表情窗口显示宽度,此窗口会因为表情文件的改变而作调整       
77. FCKConfig.SmileyWindowHeight = 240; // 表情窗口显示高度,此窗口会因为表情文件的改变而作调整       
78. FCKConfig.FullPage = true/false; // 是否允许编辑整个HTML文件,还是仅允许编辑BODY间的内容       
79.       
80.       
81. //上传设置       
82.       
83. var _FileBrowserLanguage         = 'php' ;         // asp | aspx | cfm | lasso | perl | php | py          
84. var _QuickUploadLanguage         = 'php' ;         // asp | aspx | cfm | lasso | php       
85. //第一个是文件浏览器使用的语言,第二个快速上传使用的语言,改成你需要的       
86. FCKConfig.LinkUploadAllowedExtensions         = "" ;                         // empty for all       
87. FCKConfig.LinkUploadDeniedExtensions =".(php|php3|php5|phtml|asp|aspx|ascx|jsp|cfm|cfc|pl|bat|exe|dll|reg|cgi)$"      
88. //这是两个允许和拒绝上传的文件类型列表       
89. FCKConfig.ImageBrowser = false ;是否在插入图片功能里面启用服务器文件浏览功能       
90. FCKConfigFCKConfig.ImageBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Type=ImageConnector=connectors/' + _FileBrowserLanguage + '/connector.' + _FileBrowserExtension ;       
91. Type=Image   表示文件类型是image这会使文件浏览器定位到文件上传路径/image/文件夹下面       
92. FCKConfig.FlashBrowser = false ;是否在插入flash功能中启用服务器文件浏览功能       
93. FCKConfig.LinkUpload = false ;是否启用插入链接的快速上传功能       
94. FCKConfig.ImageUpload = false ;是否启用图片快速上传功能       
95. FCKConfig.FlashUpload = false ;是否启用flash上传功能   
  
FCKeditor属性配置与优化   
  
FCKeditor是目前互联网上最好的在线编辑器,功能强大,支持IE 5.5+ (Windows), Firefox 1.0+, Mozilla 1.3+ and Netscape 7.1+.浏览器,无平台限制,能够在Windows, Mac and Linux上正常运行,可以和多种WEB语言融合,如ASP.Net 、ASP、ColdFusion、PHP、Java、 Active-FoxPro、Lasso、Perl、Python,还有多语言支持,提供50多种语言包,是一种开源软件。最新的版本是2.6,下载地址:http://www.fckeditor.net/download   
FCKeditor作为一种支持多平台,多语言的编辑器,下载之后就可以直接在程序或者网页中使用。有时由于系统并不需要如此之多的功能,所以还是需要进行一些简单的修改,配置更加适合自己的网站的个性编辑器。   
  
一、优化FCKeditor文件夹和文件:   
下载FCKeditor并解压之后,会产生_samples和editor两个文件夹和几个文件,全部删除以_开头的文件夹和文件,因为这些都是FCKeditor的一些例子而已,可以学习一下,但上传到网站服务器上就大可不必了,删除。在根目录下,还有几个fckeditor.asp,fckeditor.php,fckeditor.js......等其它文件,这个就看你的网站服务器和网站需要什么程序语言,有PHP,ASP,PERL,.NET等,我选择的是脚本配置文件fckeditor.js,还有三个文件fckconfig.js、fckstyles.xml、fcktemplates.xml是必需的文件,其它的可以全部删除。   
打开editor文件夹,进入lang文件夹,这里面是FCKeditor的语言包来的,一般国内选择en.js和zh.js和zh-cn.js文件就可以了,加上必需的文件fcklanguagemanager.js(此文件是2.4版本以下必需的),其它的文件可以完全删除。   
之后打开editor/filemanager文件夹,如果不要求在上传图片或者文件的时候显示服务器上的内容,可以选择删除filemanager文件夹下的brower文件夹。然后进入upload文件夹,里面是各种程序语言的上传文件,选择你需要的那个程序语言文件夹,其它的删除。   
进入editor/Plugins文件夹,如果你不需要这些额外的FCKeditor插件的话,把里面的文件夹全部删除。   
进入editor/skins文件夹,里面是编辑器的皮肤文件,default文件是默认的灰色面板的编辑器,Office2003和silver是另外加载的,看哪个好看就选择哪个,然后其它的删除。   
另外,editor/dialog文件夹里是一些编辑器的对话框,如果选择基本的一些功能的话,可以相应的选择其文件,把其它的删除也是可以的。   
到这里,编辑器的文件夹优化基本OK了,精简了许多,更加方便了服务器的上传和使用。   
  
二、FCKeditor的基本配置修改:   
fckconfig.js是FCKeditor编辑器的配置文件,不涉及到工具按钮的增加的话修改这里面的配置完全可以了。   
下面列举的是fckconfig.js里的配置选项:   
AutoDetectLanguage=true/false 自动检测语言   
BaseHref="" _fcksavedurl="""" _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标记   
  
下面详细的说明一下一些常用的配置选项:   
FCKConfig.DefaultLanguage = 'en' ; //选择编辑器的语言,editor/lang/文件夹下面的有相应的语言脚本文件。   
FCKConfig.ToolbarStartExpanded = true ;//载入编辑器的时候展开还是收缩工具按钮。   
FCKConfig.ToolbarSets["Default"] 和 FCKConfig.ToolbarSets["Basic"]是载入的时候显示全部工具按钮还是部分基本按钮。可以在fckeditor.js或者fckeditor.asp/php等文件中设置。   
FCKConfig.ContextMenu这个是编辑器的右键配置文件,可以自己增减对应按钮。   
FCKConfig.LinkBrowser = false ;//浏览服务器上的文件,如果选择false不允许的话,接下去的几行可以相应的注释掉。后面的FCKConfig.ImageBrowser = false ;FCKConfig.FlashBrowser = false ;也是如此。如果选择允许的话,将相应的程序语言部分的注释去掉。   
FCKConfig.LinkUpload = true ;FCKConfig.ImageUpload = true ;FCKConfig.FlashUpload = true ;这三个配置选项是设置文件上传的,如果不允许用户上传文件,则把true修改为false即可。如果允许,请在相应的程序语言里选择,即把对应的注释行去掉即可。   
修改完毕之后再打开相应的程序语言的FCKeditor文件继续。   
  
三、修改编辑器载入时的配置:   
打开fckeditor.js或者fckeditor.asp/php/pl等文件,这些文件的配置情况都是差不多的。这里拿fckeditor.js说明。   
Width:编辑器宽度。   
Height:编辑器高度。   
ToolbarSet:编辑器工具按钮:default或者basic。   
BasePath:编辑器所在目录,建议使用根目录形式。   
其它的就可以设置默认的就可以了。   
  
四、使用FCKeditor编辑器:   
1、ASP程序语言载入编辑器:   
包含文件fckeditor.asp文件,然后在相应的地方加入下面的代码:   
  
  
2、JS程序语言载入编辑器:   
引用脚本fckeditor.js文件,在相应的地方加入下面的代码:   
  
  
JS语言版本的还有一种替换文本框加快页面显示的文件,在这里我选择的是点击编辑框才出现编辑器,引用fckeditor.js文件,加入如下代码:   
  
  
  
    
  
3、PHP程序语言载入编辑器:   
包含fckeditor.php文件,在相应的地方加入下面的代码:   
$oFCKeditor = new FCKeditor('Content') ;   
$oFCKeditor->BasePath     = "../FCKeditor/" ;   
$oFCKeditor->Value         = '' ;   
$oFCKeditor->Create() ;   
?>  

// JScript 文件
  
//预览
function preview() {
oFCKeditor.Value=FCKeditorAPI.GetInstance('FCKeditor1').GetXHTML(true);
FCKeditorAPI.GetInstance('FCKeditor1').Preview();
}
//源代码/编辑转换
function viewsrc()
{
var obj=FCKeditorAPI.GetInstance('FCKeditor1');
oFCKeditor.Value=obj.GetXHTML(true);
obj.SwitchEditMode(FCK_EDITMODE_SOURCE);
if(obj.EditMode==FCK_EDITMODE_SOURCE)
{
document.getElementById("btn_src").value="编辑";
document.getElementById("btn_src").title="以所见即所得模块编辑";
}
else
{
document.getElementById("btn_src").value="源代码";
document.getElementById("btn_src").title="以源代码模块编辑";
}
  
}
//增加编辑区大小
function upsize()
{
  var height=oFCKeditor.Height;
  if(height<1200)
  {
    oFCKeditor.Height=oFCKeditor.Height 200;
    document.getElementById("FCKeditor1___Frame").height=oFCKeditor.Height;
  } 
  if(oFCKeditor.Height>1000)
    document.getElementById("btn_upsize").disabled="disabled";
  document.getElementById("btn_downsize").disabled="";    
}
//减小编辑区大小
function downsize()
{
  var height=oFCKeditor.Height;
  if(height>200)
  {
    oFCKeditor.Height=oFCKeditor.Height-200;
    document.getElementById("FCKeditor1___Frame").height=oFCKeditor.Height;
  }
  if(oFCKeditor.Height<400)
    document.getElementById("btn_downsize").disabled="disabled";
  document.getElementById("btn_upsize").disabled="";
  
}
//去除字符串首尾空格
String.prototype.trim = function()
{
    // 用正则表达式将前后空格
    // 用空字符串替代。
    return this.replace(/(^s*)|(s*$)/g, "");
}
//重置编辑器(清空)
function resetFCKEditor()
{
FCKeditorAPI.GetInstance('FCKeditor1').SetHTML("");
}
//插入HTML代码到当前位置
function inserthtml()
{
  var htmlstr=document.getElementById("insertstr").value;
  if(htmlstr.length>2)
  {
    FCKeditorAPI.GetInstance('FCKeditor1').InsertHtml(htmlstr);
  }
  document.getElementById("insertstr").value="";
} 未知 
在JS里取值方法如下:
var checkContent =FCKeditorAPI.GetInstance("content").GetXHTML();
另外还要让编辑器获得焦点:

var oEditor = FCKeditorAPI.GetInstance('content');
oEditor.Focus();
注意这里的Focus()是大写。 


// 获取编辑器中HTML内容 
function getEditorHTMLContents(EditorName) { 
var oEditor = FCKeditorAPI.GetInstance(EditorName); 
return(oEditor.GetXHTML(true)); 
} 

// 获取编辑器中文字内容 
function getEditorTextContents(EditorName) { 
var oEditor = FCKeditorAPI.GetInstance(EditorName); 
return(oEditor.EditorDocument.body.innerText); 
} 

// 设置编辑器中内容 
function SetEditorContents(EditorName, ContentStr) { 
var oEditor = FCKeditorAPI.GetInstance(EditorName) ; 
oEditor.SetHTML(ContentStr) ; 
} 

 

posted @ 2014-09-15 14:56  雨中飞鹭  阅读(1510)  评论(0编辑  收藏  举报