javascript - 在可编辑小部件中抓取焦点/文本输入

标签 javascript widget ckeditor

我添加了一个 ckeditor 小部件,其中包含以下代码

editor.widgets.add('testwidget', {
  editables: {
    content: {
      selector: '.test_widget_content'
    }
  },
  upcast: function(element) {
    return element.name == 'h1' && element.attributes['test_widget_content'] == 'true';
  },
  init: function() {
    this.on('focus', function(ev){
        console.log('focused this');
    });
    this.on('key', function(ev){
        console.log('Keyed this');
    });
}

这确实添加了小部件,但我在 init 中设置的焦点和关键方法是更新调用的。

如果我删除可编辑项:则按预期调用键和焦点,因此问题是:如何在可编辑的小部件中监听焦点和键事件?

最佳答案

事实证明你可以使用:

this.editables.content.on('keyup',function(ev) {
                    console.log('key up');
                });

在 init 方法中。唯一的问题是 on('key',function() { }) 不起作用。但 keydown 和 keyup 确实有效。

关于javascript - 在可编辑小部件中抓取焦点/文本输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39331733/

相关文章:

JavaScript - 在运行时仅更改特定对象字段值

python - 在 Tkinter 中悬停后如何更改多个小部件的颜色?

javascript - CKEditor只在onload后加载?

javascript - 如何使用 jQuery 隐藏和显示 CKEditor?

javascript - 如何通过javascript更改div中的文本

javascript - JQGrid 不改变页面

javascript - 为什么结果在循环中显示结果加上先前的结果?

安卓小部件 : addView not working with RemoteViews object

android - 如果 Http Call 需要时间返回,按钮点击会卡在 Android Widget 上

python - Django Ckeditor 图像浏览器找不到图像