Angenommen, Sie meinen eine <input type="text">
statt einer Textarea, hier ist eine Nicht-jQuery-Lösung (die Sie noch mit Ihrem jQuery-Code verwenden können). Es wird mit ziemlicher Sicherheit weniger Code sein als ein jQuery-Plug-in.
UPDATE 12. November 2011
gesagt hat, dass ich a jQuery plug-in nur für seine Art von Aufgabe entwickelt habe, und es ist in der Tat größer als der Code unten.
var textInput = document.getElementById("your_id"), val = textInput.value;
var isAtStart = false, isAtEnd = false;
if (typeof textInput.selectionStart == "number") {
// Non-IE browsers
isAtStart = (textInput.selectionStart == 0);
isAtEnd = (textInput.selectionEnd == val.length);
} else if (document.selection && document.selection.createRange) {
// IE <= 8 branch
textInput.focus();
var selRange = document.selection.createRange();
var inputRange = textInput.createTextRange();
var inputSelRange = inputRange.duplicate();
inputSelRange.moveToBookmark(selRange.getBookmark());
isAtStart = inputSelRange.compareEndPoints("StartToStart", inputRange) == 0;
isAtEnd = inputSelRange.compareEndPoints("EndToEnd", inputRange) == 0;
}
alert("At start: " + isAtStart + ", at end: " + isAtEnd);
Meinst du '' oder ''
Ich meine . Ist Textfeld das aktuelle Wort? – Peter
Raten Sie so. Ich bin mir nie sicher, was die Leute meinen. –