zoukankan      html  css  js  c++  java
  • 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) ; 
    } 
  • 相关阅读:
    使用简单的反射技术重构组合查询串功能
    沤血分享之:使用Opera浏览器技巧全集
    项目中用到的RE分析
    关于调用新浪微博与腾讯微博
    正则 (?i,m,s,x,g)
    求职路 第二章 深圳篇
    12320平台架构及部署
    网站会员密码
    求职路 第二章 技术篇
    TFS故障一二
  • 原文地址:https://www.cnblogs.com/estellez/p/3972826.html
Copyright © 2011-2022 走看看