Javascript 带有MVC的CKEditor:事件处理

Javascript 带有MVC的CKEditor:事件处理,javascript,jquery,ckeditor,jquery-events,Javascript,Jquery,Ckeditor,Jquery Events,我有以下代码,在我的表单上生成默认的CKEditor: $('#Content').ckeditor({ filebrowserUploadUrl: '/ControlPanel/Reviews/UploadReviewImage/' }); 如您所见,我的实现非常简单-大多数设置都在config.js中控制,并且对我的站点是全局的,除了上传程序处理程序 已经找了几天了,但找不到任何简洁的东西。我需要能够检测何时单击CKEditor,并使窗口变大(尽管不是全屏)。我还想在单击CKEdi

我有以下代码,在我的表单上生成默认的CKEditor:

$('#Content').ckeditor({
    filebrowserUploadUrl: '/ControlPanel/Reviews/UploadReviewImage/'
});
如您所见,我的实现非常简单-大多数设置都在config.js中控制,并且对我的站点是全局的,除了上传程序处理程序

已经找了几天了,但找不到任何简洁的东西。我需要能够检测何时单击CKEditor,并使窗口变大(尽管不是全屏)。我还想在单击CKEditor时显示一些帮助文本。。。但是我不知道如何处理dom事件,或者如何对其应用JQuery事件?我尝试了几种不同的方法,以下是我的最新尝试:

$("#Content").ckeditorGet().click(window.showDescription);
但我有一个打字错误:

未捕获的TypeError:对象#没有方法“单击”

这是可以理解的,因为CKEditor有自己的事件系统

CKEditor文档似乎很不直观,而且示例也没有多大帮助


更新

我自己设法实现了这一点,但由于我编写window.ShowDescription函数的方式,我需要向其中传递一个JQuery事件。以下是所有感兴趣的人的代码:)


正如你已经怀疑的那样,你上面所做的是行不通的。ckeditorGet方法返回编辑器的实例,而不是编辑器的DOM元素

您可以使用ckeditor的函数来确定编辑器接收焦点时要执行的操作

例如:

$("#Content").ckeditorGet().on('focus', function(e) {
    // do what you want on focus
});

我可以建议启用以更改内容区域大小吗?它更适用于您内容的大小,可能比您自己调整大小更有效。

谢谢-我昨晚制定了它(由于我的需要,执行方式略有不同),我正要用答案更新问题:)哦,谢谢您的自动增长建议-实际上增强了体验(我只想在聚焦时增加宽度,所以自动增长插件非常完美)。
$("#Content").ckeditorGet().on('focus', function(e) {
    // do what you want on focus
});