CK编辑器中的关键代码

Was*_*ani 3 javascript javascript-events ckeditor

我想在ckeditor中的keydown事件上获取keyCode.我的代码看起来有点像这样

    editor.document.on( 'keydown', function(event) {
   var keycode= event.data.keyCode & ~(CKEDITOR.SHIFT | CKEDITOR.CTRL |CKEDITOR.ALT);
  alert('Key:'+keycode);

});
Run Code Online (Sandbox Code Playgroud)

但它总是警告0.不知道为什么会如此.?
另外我想使用来自Jquery的event.preventDefault().但我无法弄清楚如何在我的plugin.js文件中包含jquery库.任何建议

Rei*_*mar 7

如果你想玩得开心,这是正确的代码:

CKEDITOR.instances.editor1.on( 'key', function (evt) {
    var kc = evt.data.keyCode,
        csa = ~(CKEDITOR.CTRL | CKEDITOR.SHIFT | CKEDITOR.ALT);

    console.log(kc, kc & csa);
    // kc & csa is what you need
});
Run Code Online (Sandbox Code Playgroud)

或者如果你想要更短的代码:

CKEDITOR.instances.editor1.document.on( 'keydown', function (evt) {
    console.log(evt.data.getKeystroke(), evt.data.getKey());
    // getKey() is exactly what you want
});
Run Code Online (Sandbox Code Playgroud)

关于防止默认 - 你不需要jQuery.CKEditor是如此庞大的工具,它内置了DOM库.您可以在第二个示例中找到preventDefault方法evt.data.