使用Codemirror的键映射防止发生默认事件

uad*_*ive 6 javascript codemirror

我试图弄清楚如何阻止浏览器在Codemirror中使用ctrl-s或cmd-s事件显示保存对话框.我可以让extraKeys工作,我无法得到它以避免调用恢复事件.我试过返回false,我已经挖掘了文档和示例.有谁知道如何防止默认发生?

这是代码:

var editor = CodeMirror.fromTextArea(document.getElementById("code"), {
lineNumbers: true, mode: "text/html",
   extraKeys: {
      "Ctrl-S": function (instance) {
         alert("your mom");
         return false;
      },
      "Cmd-S": function (instance) {
         alert("my mom");
         return false;
      }
   }
}); 
Run Code Online (Sandbox Code Playgroud)

Özg*_*sal 4

这是一个老问题,解决方案已经在答案中,但对于任何寻找使用 CodeMirror 实现 Ctrl-S / Cmd-S 的解决方案的人来说,我想有一个更好的解决方案,如CodeMirror 文档中所述

CodeMirror.commands.save = function() {
    /* Do your stuff */
};
Run Code Online (Sandbox Code Playgroud)