Heim >Web-Frontend >js-Tutorial >Wie behalte ich die Cursorposition in einem ContentEditable „browserübergreifend' bei?
Cursorposition auf ContentEditable Cursorposition innerhalb eines ContentEditable Browserübergreifende Lösung Um dieses Problem zu beheben, ziehen Sie die folgende Lösung in Betracht: Klicken Sie auf „Ereignisbehandlung“ (optional) Standardmäßig wird beim Klicken innerhalb des InhaltsEditable Verwendung Integrieren Sie diese Funktionen in Sie können Ihren Code erweitern, indem Sie saveSelection() an die Ereignisse onmouseup und onkeyup des Diese Lösung bietet einen umfassenden und browserübergreifenden Ansatz, um die Cursorposition innerhalb von contentEditable Das obige ist der detaillierte Inhalt vonWie behalte ich die Cursorposition in einem ContentEditable „browserübergreifend' bei?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!
function saveSelection() {
if (window.getSelection) {
savedRange = window.getSelection().getRangeAt(0);
} else if (document.selection) {
savedRange = document.selection.createRange();
}
}
function restoreSelection() {
document.getElementById("area").focus();
if (savedRange != null) {
if (window.getSelection) {
var s = window.getSelection();
if (s.rangeCount > 0)
s.removeAllRanges();
s.addRange(savedRange);
} else if (document.createRange) {
window.getSelection().addRange(savedRange);
} else if (document.selection) {
savedRange.select();
}
}
}
function cancelEvent(e) {
if (isInFocus == false && savedRange != null) {
if (e && e.preventDefault) {
e.stopPropagation();
e.preventDefault();
}
else {
window.event.cancelBubble = true;
}
restoreSelection();
return false;
}
}
In Verbindung stehende Artikel
Mehr sehen