我在某些专有的第三方应用中具有CKEditor的实例,我想替换一些配置参数以进行自定义。例如,某些工具栏按钮被refault删除了,我想使所有这些按钮可见。
我尝试了类似的事情
var instance = CKEDITOR.instances['editor2']
instance.config.removeButtons = ""
instance.destroy()
CKEDITOR.replace('editor2')
我发现here的,但总是出现以下错误:
TypeError:a未定义
找到了一些与ID中的前导#有关的SO问题,但是我没有它,并且使用浏览器开发人员工具查看实例时该实例存在:
> CKEDITOR.instances
Object { editor1: {…}, editor2: {…} }
也尝试使用对象的以下ID代替editor2
> CKEDITOR.instances.editor2.id
"cke_54"
CKEDITOR.replace('editor2', {removeButtons: ''})
但是所有这些都不起作用,我总是得到与a未定义相同的错误。编辑器本身可以工作,并且不会在浏览器控制台中引发任何错误。
答案 0 :(得分:0)
我遇到了同样的错误:
TypeError:a未定义
我将问题归结为找不到元素。特别是对我来说,当我运行与您相似的JS代码时,我的文档尚未完全加载。
我将调查两件事:
在文档准备就绪之前,请不要运行JS。为此,请将其包装在$(document).ready()中。示例:
$(document).ready(function(){ var instance = CKEDITOR.instances ['editor2'] instance.config.removeButtons =“” instance.destroy() CKEDITOR.replace('editor2') });