您的位置:首页 > Web前端 > JavaScript

codemirror覆盖默认按键事件

2015-11-17 19:37 465 查看
工作中用到codemirror,需要增加一个'Backspace'按键的删除事件(遇到'field'字段整个删除而不是逐字删除)。开始使用了keyHandled方法和extrakey方法,都出现了'Backspace'默认事件无法阻止的情况,后来改用addKeyMap方法,搞定。其实官方文档中也讲到这个方法常用于插件中增加按键绑定,可惜开始没注意。

代码如下

this.editor.addKeyMap({
'Backspace': function (cm) {
var ch = cm.getTokenAt(cm.getCursor());
if(ch.type == 'field') {
cm.execCommand('delWordBefore');
cm.execCommand('delCharBefore');
} else {
cm.execCommand('delCharBefore');
}
}
});
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  codemirror js