Suponiendo que significa un <input type="text">
en lugar de un área de texto, que aquí es una solución no jQuery (que todavía se puede utilizar con el código de jQuery). Es casi seguro que habrá menos código que un complemento jQuery.
Actualización 12 de noviembre de 2011
Dicho esto, he desarrollado a jQuery plug-in por sólo su tipo de tarea, y de hecho es más grande que el código de abajo.
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);
¿Quieres decir '' o a '
Quiero decir . ¿Es textbox la palabra actual? – Peter
Supongo que sí. Nunca estoy seguro de lo que las personas quieren decir. –