BEGIN;
今天在引入百度编辑器时,发现百度编辑器加载不出来。
代码是这样的:
var editor = new baidu.editor.ui.Editor({
textarea: 'content'
});
editor.render('editor_content');
开始以为自己写法有问题,然后试试alert下editor,没错,的确alert出了一个object,然后神奇的这个编辑器出现了。
接着又把alert去掉,我艹,又没了。
反反复复几次,最终发现,必须得alert,当时就郁闷了,难道alert除了能弹窗还有别的用处?
最后经过搜索,发现原来是html/js加载问题。
总结网上的说法,也就是我的情况是,前面引入的ueditor/editor_config.js、ueditor/editor_all.js、ueditor/themes/default/ueditor.css三个文件中,可能有一个只是正确请求到了,但是并没有加载完成,然后就开始加载后面的编辑器初始化js,导致最终加载失败。
怎么解决呢。
经过测试,使用setTimeout函数可以正确解决此问题,代码如下:
function aa() {
var editor = new baidu.editor.ui.Editor({
<span style="white-space:pre"> </span> textarea: 'content'
});
editor.render('editor_content');
}
setTimeout("aa()", 1);
使用setTimeout,来停顿xx时间后,再去执行函数内容。现在我的设置是,停顿1毫秒以后执行aa()函数,这样就可以完成了。
OK,搞定。
END;
--- --- --- ---> 点击查看更多最新原创博文<--- --- --- ---
技术交流