Ho una textarea e vorrei sapere se sono sull'ultima riga nella textarea o sulla prima riga nella textarea con il mio cursore con javascript.Come si ottiene la posizione del cursore in un'area di testo?
Ho pensato di afferrare la posizione del primo carattere di nuova riga e l'ultimo carattere di nuova riga e quindi afferrare la posizione del cursore.
var firstNewline = $('#myTextarea').val().indexOf('\n');
var lastNewline = $('#myTextarea').val().lastIndexOf('\n');
var cursorPosition = ?????;
if (cursorPosition < firstNewline)
// I am on first line.
else if (cursorPosition > lastNewline)
// I am on last line.
- E 'possibile per afferrare la posizione del cursore all'interno del textarea?
- Hai un suggerimento migliore per scoprire se sono sulla prima o sull'ultima riga di una textarea?
jQuery soluzioni preferite a meno che javascript sia semplice o più semplice.
Qualsiasi aiuto è molto apprezzato.
Hai visto la soluzione qui: http://blog.vishalon.net/index .php/javascript-getting-and-setting-caret-position-in-textarea/ –
Questo genera un errore, poiché le funzioni 'indexOf' e lastIndexOf' non sono metodi della funzione val'. Dovresti usare questo (anche se non dovresti usare affatto quel codice): 'var firstNewline = String ($ (" # myTextarea "). Val()). IndexOf ('\ n');' – TricksfortheWeb