Webページでxmlを表示、強調表示、編集するためにコードミラーを使用していますが、挿入位置からオフセットされたカーソル位置に問題があります。カーソルが点滅している場合は、代わりに削除されるはずの文字が表示されます。私はそれが私のページの外でうまく動作するので、私の現在のページとのCSSの衝突を想定していますが、どこでも衝突を見つけることはできません。誰も似たような問題を抱えているのか、何をすべきかを知っていますCodemirrorカーソル位置オフセット
4
A
答えて
3
詳細な調査では、問題の原因となっているフィールドセットに埋め込まれたすべてのdivにパディングが設定されていることがわかりました。
0
OSやブラウザに応じてイタリック体または太字の行の下にカーソルを置くと、行の90%までの垂直位置が正しくないことがあります。設定することで簡単に修正できます。
.CodeMirror pre {
height:15px;
}
あなたのCSSスタイルシートのどこにでもあります。また、コードの行が互いに近すぎるように見える場合は、行の高さを制御する方法も提供します。
3
次の行は私のために問題を修正しました:私は私のCodeMirror構成でlineWrapping: true
を使用してい
.CodeMirror pre {
white-space: pre-wrap;
word-break: break-all;
word-wrap: break-word;
}
。それをfalseに設定すると同様に動作します。
0
何らかの理由で、インデントが有効になっているときの空白が、線のサイズを計算するときに正しく処理されませんでした。 codemirror.js
に以下でmeasureLine
機能を置き換えることは私のためにトリックでした:
function measureLine(cm, line) {
// First look in the cache
var cached = findCachedMeasurement(cm, line);
if (cached) return cached.measure;
// Failing that, recompute and store result in cache
var measure = measureLineInner(cm, line);
var origL;
var origR;
var lastR ="";
for (var mes in measure) {
origL = measure[mes].left;
origR = measure[mes].right;
if (lastR != "") {
measure[mes].left = lastR;
measure[mes].right = lastR + (origR - origL);
}
if (origL == origR) {
measure[mes].right = measure[mes].right + 8;
}
lastR = measure[mes].right;
}
var cache = cm.display.measureLineCache;
var memo = {
text: line.text,
width: cm.display.scroller.clientWidth,
markedSpans: line.markedSpans,
measure: measure,
classes: line.textClass + "|" + line.bgClass + "|" + line.wrapClass
};
if (cache.length == 16) cache[++cm.display.measureLineCachePos % 16] = memo;
else cache.push(memo);
return measure;
}
1
はCodeMirrorであなたのCSSでズームを使用して注意してください。
私はボディをズームインし、私のために働いたものを削除しました。
関連する問題
- 1. ターボアセンブラ言語のカーソル位置、オフセット
- 2. CodeMirrorコード補完のカーソル位置の解析
- 3. divをカーソル位置に配置する際のJavascriptオフセット
- 4. エディットコントロール内のカーソル位置をオフセットするには?
- 5. オフセット値によるカーソル位置の移動
- 6. EditTextカーソル位置
- 7. カーソル位置
- 8. 制御カーソルonload/codemirror
- 9. Plotlyツールチップの位置がカーソル位置
- 10. MousePressEvent、QGraphicsViewの位置オフセット
- 11. Qt位置オフセット表面タブレット
- 12. カーソルの位置をC#
- 13. カーソル位置がPInvokeStackImbalanceエラーに
- 14. JSPデフォルトのカーソル位置
- 15. 設定のカーソル位置 - クロスブラウザ
- 16. Google Maps v3のデフォルトコントロールの位置オフセット
- 17. タイムゾーンまたはUTCオフセット位置
- 18. 絶対位置の画像オフセットのリンク
- 19. オフセットとしてのパーセルの位置
- 20. オフセット位置を計算する
- 21. Draw2D図形のオフセット位置の取得
- 22. jqueryのオフセットと固定位置のバグ
- 23. jQueryの非整数オフセット位置
- 24. カーソル位置と異なるマウス位置へのリサイズ
- 25. jQueryマウス位置の設定(カーソル位置ではない)
- 26. JavaScriptのsetSelectionRange()メソッドとカーソル位置
- 27. カーソル位置にワード形状を挿入
- 28. html mailtoリンク内のカーソルの位置
- 29. EditTextカーソル位置付け問題
- 30. カーソル位置を取得Androidキーボード