gpt4 book ai didi

javascript - CKEDITOR 初始化时没有为任何对话框调用“dialogDefinition”事件?

转载 作者:行者123 更新时间:2023-11-29 16:09:54 24 4
gpt4 key购买 nike

我正在使用 dialogDefinition 事件来更改增强图像插件的 image2 对话框的定义。我正在使用这段代码 -

CKEDITOR.appendTo("editor1" ,
{
on: {
dialogDefinition: function (ev) {

console.log("Inside dialog definition");
var dialogName = ev.data.name;
var dialogDefinition = ev.data.definition;
if (dialogName == 'image2') {
console.log("Inside Upload");
dialogDefinition.removeContents('Upload');
dialogDefinition.addContents({
title: "Upload",
id: "upload",
label: "Upload",
elements: [{
type: "html",
html: "<form>{%csrf_token%}<input id='imageupload' type='file' name='files[]'/></form>"
}]
});
}
},
},

但是当我点击任何对话框时,这个事件没有被调用,因为控制台消息没有被打印并且 image2 对话框的定义没有改变。

有什么方法可以查明为什么没有调用此事件或如何让它起作用?

最佳答案

请注意 dialogDefinition事件属于 CKEDITOR , 不是 CKEDITOR.editor .在 dialogDefinition 上监听的正确方式是这样的:

CKEDITOR.on( 'dialogDefinition', function( ev ) {
var dialogName = ev.data.name;
var dialogDefinition = ev.data.definition;

...
});

关于javascript - CKEDITOR 初始化时没有为任何对话框调用“dialogDefinition”事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31422539/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com