Przez "ostatnią pozycję" rozumiesz koniec tekstu?
Zmiana ".value" pola formularza przeniesie kursor do końca w każdej przeglądarce z wyjątkiem IE. Z IE trzeba dostać w swoje ręce brudne i świadomie manipulować wybór, stosując niestandardowe interfejsy:
if (browserIsIE) {
var range= element.createTextRange();
range.collapse(false);
range.select();
} else {
element.focus();
var v= element.value();
element.value= '';
element.value= v;
}
Czy chodziło Ci umieścić kursor z powrotem do miejsca, to było poprzednio, po raz ostatni textarea było koncentruje się?
We wszystkich przeglądarkach z wyjątkiem IE nastąpi to po prostu przez wywołanie "element.focus()"; przeglądarka zapamiętuje ostatnią pozycję kursora/selekcji na dane wejście i ponownie ją ustawia.
Byłoby to dość trudne do odtworzenia w IE. Musiałbyś cały czas sondować, aby sprawdzić gdzie był kursor/wybór, i zapamiętać tę pozycję, jeśli był w elemencie wejściowym, a następnie pobrać pozycję dla danego elementu, gdy przycisk został naciśnięty i przywrócić go. Obejmuje to naprawdę bardzo żmudną manipulację "document.selection.createRange()".
Nie jestem świadomy czegokolwiek w jQuery, które pomogłoby ci to zrobić, ale może gdzieś jest wtyczka?
czuję się brudny po przeczytaniu tego. . . – Travis
Och, obsługa selekcji IE może przynieść o wiele więcej złego! :-) – bobince
Nie wiem, czy to się kwalifikuje ... to pytanie jest oznaczone jako jQuery. Ale, hej, to powinno zadziałać :) – Seb