KindEditor源码主要分为三大模块,分别在三个私有作用域中:
(1)KindEditor的主要功能模块
(function(undefined) {
var KE = {};
......
if (window.KE === undefined) window.KE = KE;
window.KindEditor = KE;
})();
(2)各插件显示文本的文本资源模块
(function(KE, undefined) {
KE.langType = 'zh_CN';
KE.lang = {
source : 'HTML代码',
undo : '后退(Ctrl+Z)',
redo : '前进(Ctrl+Y)'
......
};
var plugins = KE.lang.plugins = {};
plugins.about = {
version : KE.version,
title : 'HTML可视化编辑器'
};
......
})(KindEditor);
(3)插件的实现模块
(function(KE, undefined) {
KE.plugin['about'] = {
click : function(id) {
KE.util.selection(id);
var dialog = new KE.dialog({
id : id,
cmd : 'about',
file : 'about.html',
width : 300,
height : 70,
loadingMode : true,
title : KE.lang['about'],
noButton : KE.lang['close']
});
dialog.show();
}
};
......
})(KindEditor);
KindEditor的各个功能都是利用插件来实现的,在模块三中包含了所有KindEditor的自带插件,是否启用插件可以通过items参数来配置。items参数的默认值包含了所有KindEditor的自带插件,默认值如下:
['source','|','fullscreen','undo', 'redo','print', 'cut','copy','paste',
'plainpaste','wordpaste','|','justifyleft','justifycenter','justifyright',
'justifyfull','insertorderedlist','insertunorderedlist','indent','outdent','subscript',
'superscript','|','selectall','-',
'title','fontname','fontsize','|','textcolor','bgcolor','bold',
'italic','underline','strikethrough','removeformat','|','image',
'flash','media','advtable','hr','emoticons','link','unlink', '|','about']
插件文本资源模块
主要源码 (function (KE, undefined) { KE.langType = 'zh_CN'; KE.lang = { source :'HTML代码', undo :'后退(Ctrl+Z)', redo :'前进(Ctrl+Y)', cut :'剪切(Ctrl+X)', copy :'复制(Ctrl+C)', paste :'粘贴(Ctrl+V)', ...... }; var plugins = KE.lang.plugins ={}; plugins.about = { version :KE.version, title :'HTML可视化编辑器' }; plugins.link = { url :'URL地址', linkType :'打开类型', newWindow :'新窗口', selfWindow :'当前窗口' }; plugins.flash = { url :'Flash地址', width :'宽度', height :'高度' }; plugins.media = { url :'媒体文件地址', width :'宽度', height :'高度', autostart :'自动播放' }; ...... })(KindEditor); |
插件文本资源模块主要包含两个属性:KE.langType和KE.lang
(1)KE.langType:指定文本显示的语言
(2)KE.lang:插件图标的提示文本
KE.lang.plugins:插件弹出对话框中的相关显示文本,如下:
title插件
KE.lang = {
......
title :'标题',
......
};
plugins.title = {
h1: '标题 1',
h2: '标题 2',
h3: '标题 3',
h4: '标题 4',
p: '正 文'
};
image插件
KE.lang = {
......
image : '图片',
......
};
plugins.image = {
remoteImage: '远程图片',
localImage: '本地上传',
remoteUrl: '图片地址',
localUrl: '图片地址',
size: '图片大小',
width: '宽',
height: '高',
resetSize: '重置大小',
align: '对齐方式',
defaultAlign: '默认方式',
leftAlign: '左对齐',
rightAlign: '右对齐',
imgTitle: '图片说明',
viewServer: '浏览...'
};
转载自:http://blog.sina.com.cn/s/blog_48a45b950100o32y.html