contenteditableMit Elementen können Benutzer Text direkt innerhalb des Elements bearbeiten. Es kann jedoch zu browserübergreifenden Inkonsistenzen bei der Behandlung von Zeilenumbrüchen kommen.
contenteditableElemente variieren je nach Browser: Chrome platziert ein
<div>Innerhalb des Zeilenumbruchs fügt Firefox ein
<br />ein und Internet Explorer fügt ein
<p>hinzu.
function placeCaretAtEnd(el) { el.focus(); if (typeof window.getSelection != "undefined" && 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(); } }
$(document).ready(function() { $('#insert_caret').click(function() { placeCaretAtEnd($('#content')); } });
Das obige ist der detaillierte Inhalt vonWie platziere ich das Caret-Zeichen am Ende des Textes in einem „inhaltsbearbeitbaren' Pre-Element konsistent in allen Browsern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!