Ace: Ass-Marker an falscher Position

Erstellt am 5. Sept. 2014  ·  4Kommentare  ·  Quelle: ajaxorg/ace

Hi

Ich verwende ace 1.1.5 und habe einige Probleme beim Setzen von Markern

Ich möchte einige Zeilen hervorheben. Dazu füge ich Marker mit folgendem Code hinzu

var range = new Range(4, 1, 8, 1);
var marker = $scope.editor.getSession().addMarker(range, "ace-related-code-highlight", "line");

mein Stil ist:

.ace-related-code-highlight {
     background-color: yellow;
}

Aber Ass hebt die ersten Reihen s hervor. ace1.png. wenn erneut genau derselbe Code mit demselben Bereich ausgelöst wird, werden die nächsten Zeilen hervorgehoben s. ace2.png

Ich habe herausgefunden, dass er immer das Highgt der Range respektiert, aber oben beginnt. im obigen Beispiel hebt er die Zeilen 1-5 hervor. zweiter Klick 5-10 und so weiter.
Aber beim Scrollen verschiebt sich der Bereich. manchmal ist die Linie 11 markiert und manchmal ist die Linie 10 nur halb markiert.
Es sieht also so aus, als hätte Ace Probleme damit, die richtige Linie zu finden?

Auch wenn ich manchmal scrolle, bekomme ich einige Rendering-Fehler. Nur der linke Teil ist gelb, nicht die ganze Zeile s.ace3.png

einen Rat was ich falsch mache?

Hilfreichster Kommentar

position:absolute; zu .ace-related-code-highlight Regel hinzufügen

Alle 4 Kommentare

position:absolute; zu .ace-related-code-highlight Regel hinzufügen

Thx für Hilfe. das hat es verbessert

aber

wenn Rufzeichen

Var-Bereich = neuer Bereich (5, 0, 10, 0);
var marker = $scope.editor.getSession().addMarker(range, "ace-related-code-highlight", "fullLine", false);

Es hebt die Zeilen 6-11 hervor. Verstehe ich die API falsch?

Ja, Zeilenindizes beginnen bei 0.

ja klar, thx mein schlecht

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen