百度編輯器二次開(kāi)發(fā)常用手記整理小結(jié)
更新時(shí)間:2012年07月03日 11:21:58 作者:
最近一直在做百度編輯器的二次開(kāi)發(fā),忙乎了一段時(shí)間,今天把一些常用的資料,整理出來(lái),供以后查詢
創(chuàng)建自定義編輯器:
//引入editor_config.js,editor_api.js,ueditor.css文件,然后在body中創(chuàng)建編輯器實(shí)例與父容器
<div id="myEditor"></div>
<script type="text/javascript">
var editorOption = {
toolbars:[['FullScreen', 'Source', 'Undo', 'Redo','Bold']],
autoClearinitialContent:true,
wordCount:false,
};
var editor_a = new baidu.editor.ui.Editor(editorOption);
editor_a.render( 'myEditor' );
</script>
配置彈出工具按鈕:
//editor_config.js editorui.js文件中找到toolbars labelMap iframeUrlMap btnCmds dialogBtns 五個(gè)參數(shù)進(jìn)行配置
//toolbars:工具或下拉框參數(shù),
//labelMap:工具按鈕提示信息
//iframeUrlMap:彈出插件URL路徑
//btnCmds:工具按鈕統(tǒng)一觸發(fā)命令
//dialogBtns:彈出命令
//注冊(cè)插件 []傳入的是toolbars中的參數(shù)
UE.plugins[] = function(){
....
execCommand:function(cmdName,myobject){
....
}
}
配置命令工具按鈕:
//editor_config.js editorui.js文件中找到toolbars labelMap btnCmds
//注冊(cè)命令工具按鈕 []傳入的是toolbars中的參數(shù)
UE.commands[] = function(){
.....
execCommand:function(){
.....
}
}
右鍵按鈕配置:
//editor_config.js contextmenu.js文件中找到toolbars labelMap items三個(gè)參數(shù)進(jìn)行配置
//命令右鍵配置
items:
{
label:"", [右鍵名字]
cmdName:"",[toolbars參數(shù)中所配置的名字]
exec:function(){
this.execCommand("");[toolbars參數(shù)中所配置的名字]
}
}
//注冊(cè)右鍵按鈕命令
UE.commands[] = function(){
execCommand:function(){
.......
}
}
注:注冊(cè)右鍵按鈕命令[]中依然是toolbars參數(shù)中所配置的名字
//插件右鍵配置[]傳入的參數(shù)是toolbars中的參數(shù)
items:
{
label:"",
cmdName:"",
exec:function(){
if(UE.ui[]){
new UE.ui[](this);
}
this.ui._dialogs['...Dialog'].open();
}
}
//注冊(cè)右鍵插件 []傳入的參數(shù)是toolbars中的參數(shù)
UE.plugins[] = function(){
....
execCommand:function(cmdName,myobject){
....
}
}
插件命令配置:
UE.plugins[] = function(){
var me = this;
//注冊(cè)鼠標(biāo)和鍵盤事件
me.addListener('mousedown',_mouseDownEvent);
me.addListener('keydown',function(type,evt){...});
me.addListener('mouseup',function(){});
//查詢當(dāng)前命令狀態(tài)
queryCommandState:function(cmdName){}
//命令執(zhí)行主體
exeCommand:function(cmdName,myobject){}
//獲取命令執(zhí)行結(jié)果
queryCommandValue:function(cmdName){}
}
插件彈出執(zhí)行注冊(cè):
dialog.onok = function(){
editor.execCommand("",""); //兩個(gè)參數(shù),功能參數(shù),我們自己需要傳入的值
dialog.close();
}
一些操作類,實(shí)用:
//editor.selection.getRange() 查詢范圍方法
//editor類,此類用于初始化的一些設(shè)置,比如獲取內(nèi)容,設(shè)置高寬,設(shè)置編輯器內(nèi)容等等。
//domUtils類,此類用于不同幀內(nèi)dom節(jié)點(diǎn)的操作,比如獲取父節(jié)點(diǎn),節(jié)點(diǎn)屬性,文本內(nèi)容等等。
//browser類,此類用于檢測(cè)游覽器,比如判斷IE火狐等。
//EventBase類,此類用基礎(chǔ)事件的注冊(cè)類,比如鼠標(biāo),鍵盤事件等。
//ajax類,此類用于ajax工具類。
//暫時(shí)在工作里只用到了上述,代碼的組織結(jié)構(gòu),都還木有研究。
如何給百度編輯器editor擴(kuò)展
百度編輯器的editor對(duì)象中,是百度編輯器所有方法對(duì)象,在擴(kuò)展時(shí),只需要在首頁(yè)實(shí)例中,添加方法。editor.xx = {}。
在任何的頁(yè)面中editor對(duì)象,都可以點(diǎn)出我們?cè)谑醉?yè)中定義的擴(kuò)展方法。
復(fù)制代碼 代碼如下:
//引入editor_config.js,editor_api.js,ueditor.css文件,然后在body中創(chuàng)建編輯器實(shí)例與父容器
<div id="myEditor"></div>
<script type="text/javascript">
var editorOption = {
toolbars:[['FullScreen', 'Source', 'Undo', 'Redo','Bold']],
autoClearinitialContent:true,
wordCount:false,
};
var editor_a = new baidu.editor.ui.Editor(editorOption);
editor_a.render( 'myEditor' );
</script>
配置彈出工具按鈕:
復(fù)制代碼 代碼如下:
//editor_config.js editorui.js文件中找到toolbars labelMap iframeUrlMap btnCmds dialogBtns 五個(gè)參數(shù)進(jìn)行配置
//toolbars:工具或下拉框參數(shù),
//labelMap:工具按鈕提示信息
//iframeUrlMap:彈出插件URL路徑
//btnCmds:工具按鈕統(tǒng)一觸發(fā)命令
//dialogBtns:彈出命令
//注冊(cè)插件 []傳入的是toolbars中的參數(shù)
UE.plugins[] = function(){
....
execCommand:function(cmdName,myobject){
....
}
}
配置命令工具按鈕:
復(fù)制代碼 代碼如下:
//editor_config.js editorui.js文件中找到toolbars labelMap btnCmds
//注冊(cè)命令工具按鈕 []傳入的是toolbars中的參數(shù)
UE.commands[] = function(){
.....
execCommand:function(){
.....
}
}
右鍵按鈕配置:
復(fù)制代碼 代碼如下:
//editor_config.js contextmenu.js文件中找到toolbars labelMap items三個(gè)參數(shù)進(jìn)行配置
//命令右鍵配置
items:
{
label:"", [右鍵名字]
cmdName:"",[toolbars參數(shù)中所配置的名字]
exec:function(){
this.execCommand("");[toolbars參數(shù)中所配置的名字]
}
}
//注冊(cè)右鍵按鈕命令
UE.commands[] = function(){
execCommand:function(){
.......
}
}
注:注冊(cè)右鍵按鈕命令[]中依然是toolbars參數(shù)中所配置的名字
//插件右鍵配置[]傳入的參數(shù)是toolbars中的參數(shù)
items:
{
label:"",
cmdName:"",
exec:function(){
if(UE.ui[]){
new UE.ui[](this);
}
this.ui._dialogs['...Dialog'].open();
}
}
//注冊(cè)右鍵插件 []傳入的參數(shù)是toolbars中的參數(shù)
UE.plugins[] = function(){
....
execCommand:function(cmdName,myobject){
....
}
}
插件命令配置:
復(fù)制代碼 代碼如下:
UE.plugins[] = function(){
var me = this;
//注冊(cè)鼠標(biāo)和鍵盤事件
me.addListener('mousedown',_mouseDownEvent);
me.addListener('keydown',function(type,evt){...});
me.addListener('mouseup',function(){});
//查詢當(dāng)前命令狀態(tài)
queryCommandState:function(cmdName){}
//命令執(zhí)行主體
exeCommand:function(cmdName,myobject){}
//獲取命令執(zhí)行結(jié)果
queryCommandValue:function(cmdName){}
}
插件彈出執(zhí)行注冊(cè):
復(fù)制代碼 代碼如下:
dialog.onok = function(){
editor.execCommand("",""); //兩個(gè)參數(shù),功能參數(shù),我們自己需要傳入的值
dialog.close();
}
一些操作類,實(shí)用:
復(fù)制代碼 代碼如下:
//editor.selection.getRange() 查詢范圍方法
//editor類,此類用于初始化的一些設(shè)置,比如獲取內(nèi)容,設(shè)置高寬,設(shè)置編輯器內(nèi)容等等。
//domUtils類,此類用于不同幀內(nèi)dom節(jié)點(diǎn)的操作,比如獲取父節(jié)點(diǎn),節(jié)點(diǎn)屬性,文本內(nèi)容等等。
//browser類,此類用于檢測(cè)游覽器,比如判斷IE火狐等。
//EventBase類,此類用基礎(chǔ)事件的注冊(cè)類,比如鼠標(biāo),鍵盤事件等。
//ajax類,此類用于ajax工具類。
//暫時(shí)在工作里只用到了上述,代碼的組織結(jié)構(gòu),都還木有研究。
如何給百度編輯器editor擴(kuò)展
百度編輯器的editor對(duì)象中,是百度編輯器所有方法對(duì)象,在擴(kuò)展時(shí),只需要在首頁(yè)實(shí)例中,添加方法。editor.xx = {}。
在任何的頁(yè)面中editor對(duì)象,都可以點(diǎn)出我們?cè)谑醉?yè)中定義的擴(kuò)展方法。
相關(guān)文章
Html 編輯器粘貼內(nèi)容過(guò)濾技術(shù)詳解
最近在解決數(shù)據(jù)粘貼方面取得了不少進(jìn)展,作為Html在線編輯器所必須具備的技術(shù),在這里詳細(xì)給大家介紹并提供實(shí)現(xiàn)參考。2010-05-05最新版CKEditor的配置方法及插件(Plugin)編寫示例
本文記錄配置CKEditor過(guò)程,并以文章分頁(yè)插件為例,簡(jiǎn)要CKEditor Plugin編寫過(guò)程。 從官網(wǎng)http://ckeditor.com/download下載最新版CKEditor,解壓2017-03-03Office文檔在線編輯的一個(gè)實(shí)現(xiàn)方法
因?yàn)轫?xiàng)目的關(guān)系,研究了一下Office的在線編輯功能,寫出來(lái)共享一下。2010-06-06PHP網(wǎng)頁(yè) Ewebeditor 編輯器嵌入方法
因?yàn)閑webeditor編輯器的功能強(qiáng)大,容易擴(kuò)展等原因,一直是大家比較喜愛(ài)的編輯器,所以下面介紹下ewebeditor如何跟php結(jié)合。2009-07-07ie9后瀏覽器fckeditor無(wú)法上傳圖片、彈出浮層內(nèi)容不顯示的解決方法
升級(jí)到IE9后,fckeditor在IE9里的彈出浮動(dòng)層會(huì)出現(xiàn)bug,里面的內(nèi)容不會(huì)出現(xiàn)。原因是IE9不支持var $=document.getElementById;這樣的寫法了2014-01-01百度ueditor組件上傳圖片后如何設(shè)置img里的alt屬性
百度ueditor組件,使用上傳圖片后,設(shè)置了一個(gè)alt屬性,其值是上傳圖片時(shí)的本地路徑,如果想更改的話可以參考下面的解決方法2014-09-09FCKeditor編輯器添加圖片上傳功能及圖片路徑問(wèn)題解決方法
現(xiàn)在很多CMS系統(tǒng)因?yàn)榘踩驎?huì)把后臺(tái)編輯器里的上傳功能給去除,但這樣一來(lái)對(duì)實(shí)際使用過(guò)程造成了很多麻煩,今天我們以ASPCMS系統(tǒng)的FCKeditor編輯器為例,說(shuō)明一下如何增加圖片上傳功能2014-04-04