Heim > Web-Frontend > js-Tutorial > Wie kann das Caret-Zeichen in einer browserübergreifenden Umgebung konsistent am Ende des Inhalts platziert werden?

Wie kann das Caret-Zeichen in einer browserübergreifenden Umgebung konsistent am Ende des Inhalts platziert werden?

Linda Hamilton
Freigeben: 2024-11-19 08:54:03
Original
924 Leute haben es durchsucht

How to Consistently Place the Caret at the End of Content in a Cross-Browser Environment?

Caret-Platzierung am Ende des Inhalts: Eine browserübergreifende Lösung

In der Webentwicklung muss sichergestellt werden, dass bei der Webentwicklung das Caret-Zeichen ( Cursor) wird korrekt angezeigt. Dies stellt eine Herausforderung dar, wenn es um die browserübergreifende Kompatibilität geht.

Browserspezifisches Verhalten

Unterschiedliche Browser behandeln Inhalte unterschiedlich:

  • Chrome: Einsätze
    für Zeilenumbrüche
  • Firefox: Fügt
    und verwendet
    für neue Zeilen
  • IE: Fügt

    für neue Absätze

Einfügemarke am Ende setzen

Um die Einfügemarke unabhängig vom Browser konsistent am Ende des Textes zu setzen, können Sie die folgende Funktion implementieren :


<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">el.focus();
if (typeof window.getSelection != "undefined"
        &amp;&amp; typeof document.createRange != "undefined") {
    var range = document.createRange();
    range.selectNodeContents(el);
    range.collapse(false);
    var sel = window.getSelection();
    sel.removeAllRanges();
    sel.addRange(range);
} else if (typeof document.body.createTextRange != "undefined") {
    var textRange = document.body.createTextRange();
    textRange.moveToElementText(el);
    textRange.collapse(false);
    textRange.select();
}
Nach dem Login kopieren

}

Implementierung

Um diese Funktion zu verwenden, rufen Sie sie einfach auf, nachdem Sie ein bearbeitbares Element erstellt haben:

...

placeCaretAtEnd( document.querySelector('p') );
Nach dem Login kopieren

Vorteile

Diese browserübergreifende Lösung bietet ein konsistentes und benutzerfreundliches Erlebnis zur Textbearbeitung, um sicherzustellen, dass der Cursor immer korrekt am Ende des Textes positioniert ist.

Das obige ist der detaillierte Inhalt vonWie kann das Caret-Zeichen in einer browserübergreifenden Umgebung konsistent am Ende des Inhalts platziert werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage