7

エディターにフォーカスがあるときに Command+キーの組み合わせを押すと呼び出される ACE Editor の検索ダイアログを無効にしたいと考えています。F

私は(とりわけ)以下を試しました:

document.body.onkeydown = 
document.body.onkeyup = 
document.body.onkeypress = function(event) {      
    return false;
};

Commandこれにより、通常どおりに入力できなくなりますが、 +の処理は停止しませんA key

Command+F組み合わせが処理されないようにするにはどうすればよいですか?

理想的には、他のキーの組み合わせを引き続き使用したいので、 Command+の組み合わせのみを防止できるようにしたいと考えています。FCommand

この質問のために JSFiddle を設定しました。

4

3 に答える 3

7

Andrei Andrushkevich の答えは、より優れたシンプルなソリューションになりました。


を使用してショートカットに関連付けられたコマンドを再定義しeditor.commands.addCommand、空の関数を指定するだけです。このカスタム定義は、組み込みの定義よりも優先されます。この場合:

editor.commands.addCommand({
    name: "unfind",
    bindKey: {
        win: "Ctrl-F",
        mac: "Command-F"
    },
    exec: function(editor, line) {
        return false;
    },
    readOnly: true
})

これが更新された JSFiddleです。明確なドキュメントは見つかりませんでしたが、ここにeditor.commands定義があり、ここに が.addCommands()あります。(注:この回答が書かれてからコードが変更された可能性があります。)

jcubicのコメントに従って編集

于 2012-12-03T10:01:57.207 に答える