我在 JQuery UI 对话框中创建 CKEditor 的多个实例时遇到问题。对话框通过 AJAX 加载远程表单,因此目标是能够关闭和重新打开对话框并拥有编辑器的新实例。使用默认选项,当重新打开对话框时,它会给出一个错误,指出具有该名称的编辑器已经存在。所以我尝试了几种破坏编辑器实例的方法,它们都导致了同样的问题。重新加载编辑器时,文本区域显示为 null 并且按钮不起作用。
目前我正在使用这种销毁实例的方法:
var instance = CKEDITOR.instances['test'];
if (instance) { CKEDITOR.remove(CKEDITOR.instances['test']); }
我用几个可在此处下载的简单 html 文件重新创建了该问题。
编辑:我刚刚尝试使用两个具有不同名称的文本区域的远程文件,但我遇到了同样的问题。当一个对话框打开然后关闭时,另一个对话框在打开时有一个“空”CKEditor。
此外,显然这只是 Safari 中的一个问题。