Wenn Sie möchten, dass sich Benutzer auf einen bestimmten Teil eines Textfelds konzentrieren, müssen Sie den Cursor möglicherweise auf positionieren einen bestimmten Versatz innerhalb des Feldes. Um dies mit jQuery zu erreichen, können Sie eine setCursorPosition-Funktion implementieren.
$.fn.setCursorPosition = function(pos) { if (this.setSelectionRange) { this.setSelectionRange(pos, pos); } else if (this.createTextRange) { var range = this.createTextRange(); range.collapse(true); if (pos < 0) { pos = $(this).val().length + pos; } range.moveEnd("character", pos); range.moveStart("character", pos); range.select(); } };
Wenn diese Funktion vorhanden ist, können Sie die Cursorposition festlegen, indem Sie sie mit dem gewünschten Offset aufrufen:
$("#input").focus(function() { $(this).setCursorPosition(4); });
Wenn in diesem Beispiel das #Eingabefeld den Fokus erhält, wird der Cursor nach dem vierten Zeichen positioniert (von 0 an gezählt).
Ein alternativer Ansatz ist die Verwendung von die in der akzeptierten Antwort bereitgestellte selectRange-Funktion:
$.fn.selectRange = function(start, end) { if (end === undefined) { end = start; } return this.each(function() { if ("selectionStart" in this) { this.selectionStart = start; this.selectionEnd = end; } else if (this.setSelectionRange) { this.setSelectionRange(start, end); } else if (this.createTextRange) { var range = this.createTextRange(); range.collapse(true); range.moveEnd("character", end); range.moveStart("character", start); range.select(); } }); };
Mit dieser Funktion können Sie den Cursor positionieren und einen Textbereich auswählen:
$("#elem").selectRange(3, 5); // select a range of text $("#elem").selectRange(3); // set cursor position
Diese Lösungen bieten verschiedene Methoden zum Festlegen die Cursorposition und manipulieren Sie die Textauswahl in Textfeldern mit jQuery.
Das obige ist der detaillierte Inhalt vonWie legt man mit jQuery die Cursorposition in Textbereichen fest?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!