首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Quill:如何在自定义blot上处理键盘事件

Quill:如何在自定义blot上处理键盘事件
EN

Stack Overflow用户
提问于 2017-10-07 12:55:59
回答 1查看 3.4K关注 0票数 2

我已经创建了自定义内联印迹,并希望处理键盘事件在它上。

constructor中,我编写了如下代码:

代码语言:javascript
复制
class FooBlot extends Inline {
  constructor(domNode, value){
    super(domNode, value);
    domNode.addEventListener('keydown', (event) => {this.keydown_handler(event)});
    domNode.addEventListener('click', (event) => {this.click_handler(event)});
  };

当我试图用我的印迹做一些事情时,只有单击事件被处理,而不是按键事件。

您可以看到代码示例这里。打开控制台,单击,您将在控制台中看到“单击”。但是,如果你试图按一些键盘按钮,例如箭头,你就什么都看不到了。

在我的自定义污点上处理键盘事件的正确方法是什么?

EN

回答 1

Stack Overflow用户

发布于 2018-08-21 10:13:15

处理键盘事件的正确方法是使用键盘模块

处理Enter密钥的简单示例:

代码语言:javascript
复制
const bindings = {
  enter: {
    key: 13,
    shiftKey: null,
    handler: (range, context) => {
      // Handle enter
    }
  }
};

this.quill = new Quill('#editor-container', {
  modules: {
    keyboard: {
      bindings
    },
    toolbar: '#toolbar'
  },
  theme: 'snow'
});

更新

另一种方式是:

quill.root.addEventListener('keydown', evt => { // Your code goes here });

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46620371

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档