为Fckeditor添加自定义工具栏按钮

之前给茶饭后的fckeditor编辑器做过一次添加自定义工具按钮,也有想把添加方法整理一下的念头,当时懒,以为添加一次就可以了,以后很少用到,没想到今天又用到了,之前怎么添加的忘的差不多,又去查资料,这次索性整理一个完整的添加方法以备后用。
我需要在工具栏添加一个用来向编辑区插入一条链接信息的按钮,具体可以看截图:

点击确定后,向编辑区插下如下代码:

手术开始,Fckeditor的

下载地址,当前版本2.6.3。

需要修改的文件:

  1. fckeditor\fckconfig.js
  2. fckeditor\editor\lang\zh-cn.js
  3. fckeditor\editor\js\fckeditorcode_gecko.js
  4. fckeditor\editor\js\fckeditorcode_ie.js
  5. fckeditor\editor\skins\default\fck_strip.gif
  6. fckeditor\editor\_source\internals\fckcommands.js
  7. fckeditor\editor\_source\internals\fckregexlib.js
  8. fckeditor\editor\_source\internals\fcktoolbaritems.js

需要添加的文件:

  • fckeditor\editor\dialog\fck_playgame.htm
  1. 首先要给工具栏按钮起个名字,我这里起名叫PlayGame
    现在先来修改文件1.fckconfig.js,在文件的119行,有个叫Basic的工具栏定义,我在“关于”按钮的后面加入我的自定义按钮,修改完的代码如下:

    ['Bold','Italic','-','OrderedList','UnorderedList','-','Link','Unlink','-','About','PlayGame']
  2. 然后修改文件2.zh-cn.js,在文件的结尾处加入如下信息:(注意加入之后,先给最后一行DlgDivInlineStyle:”CSS 样式”的结尾加上号)
    PlayGame	: "本地游戏",
    PlayGameProp	: "本地游戏属性",
    DlgPlayGameWidth	: "宽度",
    DlgPlayGameHeight	: "高度",
    DlgPlayGameFileName	: "文件名",
    DlgPlayGameLinkTxt	: "链接文字",
    DlgPlayGameErrorWidth	: "游戏宽度不能为空",
    DlgPlayGameErrorHeight	: "游戏高度不能为空",
    DlgPlayGameErrorFileName	: "游戏文件名不能为空",
    DlgPlayGameErrorLinkTxt	: "链接文字不能为空"
  3. 然后是修改文件3.fckeditorcode_gecko.js和文件4.fckeditorcode_ie.js,两个文件的修改内容完全一样。
    • 查找InsertHorizontalRule,在后面加入|PlayGame
    • 查找default:if (FCKRegexLib,在前面加入如下代码,用于显示点击按钮后的浮动窗口,后三个参数分别是窗口对应的文件名,宽,高。
      case 'PlayGame':B=new FCKDialogCommand('PlayGame',FCKLang.PlayGame,'dialog/fck_playgame.htm',380,300);break;
    • 查找default:alert(FCKLang.UnknownToolbarItem,在前面加入如下代码,用于显示按钮样式,78的意思就是文件5.fck_strip.gif中对应的小图。
      case 'PlayGame':B = new FCKToolbarButton('PlayGame' , FCKLang.PlayGame,null,null,null,null,78);break;
    • 修改文件5.fck_strip.gif,把画布的高度向下增加16个像素,然后找个16像素的图标放进来,那么它对应的数字就是78了,如果你不确定而且有足够耐心,可以数一下,哈哈。
  4. 继续修改文件6.fckcommands.js,查找到 case ‘Undefined’ : oCommand = new FCKUndefinedCommand() ; break ;,在后面加入如下代码:
    case 'PlayGame'	: oCommand=new FCKDialogCommand('PlayGame',FCKLang.PlayGame,'dialog/fck_playgame.htm',380,300); break ;
  5. 文件7.fckregexlib.js,查找NamedCommands,同样在这一行的结尾InsertHorizontalRule后面加入|PlayGame
  6. 文件8.fcktoolbaritems.js,查找FCKLang.ShowBlocks, null, null, null, true, 72 ) ; break ;,在下一行加入如下代码:
    case 'PlayGame'		: oItem = new FCKToolbarButton( 'PlayGame'	, FCKLang.PlayGame, null, null, null, null, 78); break;
  7. 剩下最后一个文件fck_playgame.htm,内容较多,就不放进日志了
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值