最近嘗試用 nodeJS + angularJS + express 開發一個簡單的文章管理系統項目。
發布文章采用的是KindEditor編輯器,一直用這個編輯器感覺還不錯,官方文檔的使用說明也很詳細。然而,今天遇到了個奇葩問題,kindeditor-min.js以及css文件明明已經加載進來了,卻進入不了KindEditor.ready(function(K){})里面。用以下代碼測試了一下:
console.log(KindEditor); console.log(KindEditor.ready());
控制台輸出:
function (a,b){function c(a){a[0]||(a=[]);return new D(a)}if(!(a===i||a===null)){if(typeof a==="string"){b&&(b=f(b)[0]);var d=a.length;a.charAt(0)==="@"&&(a=a.substr(1));if(a.length!==d||/<.+>/.test(a)){var d=(b?b.ownerDocument||b:document).createElement("div"),e=[];d.innerHTML='<img id="__kindeditor_temp_tag__" width="0" height="0" style="display:none;" />'+a;for(var g=0,h=d.childNodes.length;g<h;g++){var j=d.childNodes[g];
j.id!="__kindeditor_temp_tag__"&&e.push(j)}return c(e)}return c(Ca(a,b))}if(a&&a.constructor===D)return a;a.toArray&&(a=a.toArray());if(Z(a))return c(a);return c(Ja(arguments))}}
undefined
說明KindEditor確實是已經定義了的。
后來換了一種方式來初始化創建編輯器,突然就好了。。不知道為什么會這樣。。
原來的代碼:
KindEditor.ready(function(K) {
alert("aa");
window.editor = K.create('textarea[name="content"]', {
width: '1000px',
height: '1500px',
resizeMode: 0,
allowPreviewEmoticons: false,
items: [
'bold', 'italic', 'underline',
'|', 'justifyleft', 'justifycenter', 'justifyright', 'insertorderedlist',
'insertunorderedlist', '|', 'emoticons', 'link']
});
});
不能彈出“aa”
修改后的代碼:
function kedit(kedit){
var editor = KindEditor.create(kedit,{
width: '780px',
height: '700px',
resizeMode: 0,
allowPreviewEmoticons: false,
items: [
'bold', 'italic', 'underline',
'|', 'justifyleft', 'justifycenter', 'justifyright', 'insertorderedlist',
'insertunorderedlist', '|', 'emoticons', 'link']
});
}
$(function(){
kedit('textarea[name="content"]');
})
