首页 > 开发 > 综合 > 正文

FCK网页编辑器(FCKEditor)添加新按钮和功能的修改方法

2024-07-21 02:53:50
字体:
来源:转载
供稿:网友
最近项目需要对已有的FCKeditor添加新的功能,以前的做法只是在外壳处再次封装,这次无法满足需求只能进行内部修改了。
 
需要修改的文件: 

fckconfig.js 
zh-cn.js 
en.js 
fckeditorcode_gecko.js || fckeditorcode_ie.js(针对IE以外的浏览器||针对ie浏览器,如果要支持两种浏览器,就这两个包都修改) 

第一步:在Toolbar中添加功能按钮 
fckconfig.js:FCKConfig.ToolbarSets[“Default”] 中添加按钮名称 
FCKConfig.ToolbarSets["Default"] = [ 
['Bold','Italic','-','About', 'mydiy'] 
] ; 

第二步:为按钮添加中文名称和英文名称 

zh-cn.js:为你的按钮起个中文名字 
mydiy : “我的自定义按钮" 

en.js:为你的按钮起个英文名字 
mydiy:"mydiybutton" 

第三步:在Toolbar中显示该按钮 

fckeditorcode_gecko.js(fckeditorcode_ie.js): 
查找: 

case 'NewPage':B=new FCKToolbarButton('NewPage',FCKLang.NewPage,null,null,true,null,4);break; 
在break后插入你的代码 

比如case 'mydiy':B=new FCKToolbarButton('mydiy',FCKLang.mydiy,null,null,false,true,50);(这个50是按钮的显示图片,要让你的自定义按钮显示为插入图片那个按钮的图片,可以填入37) 
这样就可以在Toolbar中显示你的按钮了 

第四步:定义按钮功能原型 

ckeditorcode_gecko.js(fckeditorcode_ie.js): 

查找: 

var FCKNewPageCommand=function(){this.Name='NewPage';}; 
FCKNewPageCommand.prototype.Execute=function(){FCKUndo.SaveUndoStep();FCK.SetHTML('');FCKUndo.Typing=true;}; 
FCKNewPageCommand.prototype.GetState=function(){return FCK_TRISTATE_OFF;}; 
定义功能原型:(这里直接复NewPage的实现代码放到后面,然后进行修改) 

比如:var FCKmydiyCommand=function(){this.Name='mydiy';};FCKmydiyCommand.prototype.Execute=function(){ 这里写你所需要执行的代码或者函数,比如alert("I am here !");};FCKmydiyCommand.prototype.GetState=function(){return 0;}; 
将上面代码插入到查找内容之后。 

第五步:按钮功能实例化: 

ckeditorcode_gecko.js(fckeditorcode_ie.js): 

查找: 

case 'NewPage':B=new FCKNewPageCommand();break; 
功能实例化: 
case 'mydiy':B=new FCKmydiyCommand();break; 
将上面代码插入到查找内容之后。 

OK,这样就可以在为FCKeditor加上自定义的按钮了。 

如果要为按钮加上快捷键,可以在fckconfig.js中:FCKConfig.Keystrokes = []加上 
[ CTRL + 71 /*G*/, 'mydiy' ],

来自:萍客小居 (http://www.piikee.net/)

注:相关教程知识阅读请移步到编辑器频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表