KindEditor官方的文档在使用KindEditor时是这样的:
KindEditor.ready(function(K)) { K.create('#editor_id'); }
使用了自己提供给的ready,想要在dom加载完成后创建富文本框。一般情况下都不会有问题,我在dome中也是可用的。今天正式把代码一直到项目中,幺蛾子出现啦,富文本框怎么都不出现。花了一个来小时问题定位到ready。问题的原因是,我调用KindEditor的代码是使用requirejs引入的,在执行KindEditor.ready代码的时候dom结构早就完成了,动态插入的script代码不会再次触发DOMContentLoaded事件,因此KindEditor.ready注册的回调永远不会被执行,富文本框当然不会出现啦。解决方案很简单,不要使用KinkEditor.ready,直接KindEditor.create().就好啦:
KindEditor.create('#editor_id');