角度ウェブアプリケーションでコードミラーを使用しています。現在、ユーザーがテキストを強調表示した後、強調表示された部分をクリックすると、コードミラーは選択された領域のコピーをクリップボードに配置します。これは私たちが望む行動ではありません。テキストの選択を解除するだけの通常の動作が欲しいです。クリック時のコードミラーコピーの防止
私はマウスクリックイベントをキャッチしてfalseを返すか、codemirrorIgnoreをtrueに設定しようとしましたが、動作しませんでした。私は "LeftDown"のキーマップを再定義しようとしましたが、既存のアクション名が定義されている場所に関する情報は見つかりませんでした。
誰でも手助けできますか?ここで
私はキーマップを変更するために試したコードは次のとおりです。
$scope.editorOptions = {
lineWrapping: true,
lineNumbers: true,
smartIndent: true,
autoCloseTags: true,
cursorScrollMargin: 25,
styleActiveLine: true,
mode: "text/html",
theme: "default",
matchBrackets: true,
matchTags: {
bothTags: true
},
extraKeys: {
"F11": function (cm) {
cm.setOption("fullScreen", !cm.getOption("fullScreen"));
},
"Esc": function (cm) {
if (cm.getOption("fullScreen")) {
cm.setOption("fullScreen", false);
}
},
//Don't know where "autocomple", "findPersistent" are defined so I can see what is available
"LeftClick": "LeftClick",
"Ctrl-Space": "autocomplete",
"Alt-B": "findPersistent",
"Ctrl-J": "toMatchingTag"
},
viewportMargin: 10,
textWrapping: true
};
私もui-codemirror="{ onLoad : codemirrorLoaded }"
を使用してのonload機能を使用しようと、次の
$scope.codemirrorLoaded = function(_editor) {
_editor.on("mouseDown", function(cm, event) {
cm.codemirrorIgnore = true;
//also tried return false
}
};
falseを返すには、何もしなかったし、codemirrorIgnore
を設定します本当に、左クリックが何もしないようにしました。
あなたが既に持っているコードと、手元にある問題を解決しようとしたコードを提供すると、より役に立ちます。 –
申し訳ございません。私は月曜日まで待つ必要があります。ありがとう。 – markbernard
@GhassenLouhaichiは私が試したコードサンプルを追加しました。 – markbernard