码迷,mamicode.com
首页 > 其他好文 > 详细

关于百度富文本编辑器UEdit的初始化内容失败问题

时间:2017-05-06 11:59:19      阅读:1750      评论:0      收藏:0      [点我收藏+]

标签:world   自己的   赋值   自己   完整   edit   经验   方法   编辑器   

百度富文本编辑器毫无疑问是强大的,但也会出问题。这个问题是在脚本中普遍存在的,由异步性导致的加载顺序问题。

我们使用

var ue = UE.getEditor(‘editor‘, {});

创建实例。

并使用

ue.setContent("Helllo World!");

初始化内容。

但是有时候初始化失败。

原因是初始化的时候富文本编辑器还没有加载完成。

这个原因对于经验丰富的攻城狮不难想到,因为js的异步问题不是只在这产生,很多时候都有这种异步导致的加载顺序问题。

对此头疼了一整天之后终于找到解决方法,UEdit有个自己的方法,可以在加载完成后执行。

ue.ready(function() {
    ue.setContent(a);  //赋值给UEditor
});

和document.ready很像,却很难找,有时候就是这样,想找一个功能的时候,很难去具体寻找。所以经验很重要。

当然我们还可以使用取巧的办法,比如使用setTimeout延时处理,以跳过加载期。只是window.onload是不行了。

原因还要追寻到此类插件的实现方式上,此类插件的具体实现并不是给定一个完整的dom结构然后进行动作,而是自行使用js创建整个dom结构,那么像富文本编辑器这样的就非常耗费性能。加载时间必然不短不说,window.onload是在dom加载完成执行,js的dom插入却不在此列。

关于百度富文本编辑器UEdit的初始化内容失败问题

标签:world   自己的   赋值   自己   完整   edit   经验   方法   编辑器   

原文地址:http://www.cnblogs.com/yunzhexiaye/p/6815914.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!