4

我目前正在使用 CKEditor 来编辑和查看我的 SQL 数据库中的文档。如果我更改 sql 数据库中文档的内容,它应该会自动使用新文本更新 CKEditor 实例。我唯一的问题是它在更新时会闪烁(即:它变为空白,然后更新为新文本)。有谁知道如何让它成为一个令人窒息的过渡。我也在使用 JQuery,所以我不确定是否有任何东西可以用来平滑过渡到新文本。

CKEDITOR.instances.content.setData("data");
CKEDITOR.instance.content.setData("new data");

从数据到新数据的变化会有一点滞后。

4

2 回答 2

7

在框架(基于wysiwygarea插件)编辑器实例中设置数据时,无法避免一些轻微的闪烁。这是因为iframe必须重新创建包含您的作品的全部内容。这一点也不像小菜一碟,我认为我们很难绕过这件事。

我建议您在可编辑的情况下使用element.setHtml( html ) :

CKEDITOR.instances.editor1.editable().setHtml( '<p>FooBar</p>' );

不是以任何方式设置编辑器内容的有效方法,因为它绕过了内部过滤、处理和其他东西。然而,如果你小心的话,它可能对你有用。

PS您可能还想缓存editor1.editable()对象以加快速度。


CKEditor 的一些核心开发人员在堆栈溢出时处于活跃状态。

是的。我们是 ;)

于 2013-03-28T15:31:47.660 回答
1

似乎屏幕闪烁是因为页面正在编辑器中重新加载 iframe。通过使用 CKEditor 的 divarea 插件,我可以摆脱闪烁。现在唯一的问题是 CKEditor.readOnly 属性不再起作用......

于 2013-03-28T06:30:12.200 回答