我试图弄清楚如何防止浏览器在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;
      }
   }
});

最佳答案

这是一个古老的问题,解决方案已经在答案之内,但是对于任何寻求使用CodeMirror实现Ctrl-S/Cmd-S解决方案的人,我猜CodeMirrror documentaion中指出有更好的解决方案

CodeMirror.commands.save = function() {
    /* Do your stuff */
};

关于javascript - 防止Codemirror的键盘映射发生默认事件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15531453/

10-12 15:22