selectionStart でキャレットの位置を取得する
selectionStartを使う。
selectionStart - Mozilla | MDN
イベントと組み合わせて使う。
イベント | DOM API | 結果 |
---|---|---|
keydown | selectionStart | 直前の位置を取得 |
keyup | selectionStart | 直前の位置を取得 |
jQuery だとこう。
$('input.selector').on('keyup', function(e) { // カーソル位置取得 var cursorPosition = this.selectionStart; //ひとつ右にずらす cursorPosition++; // カーソル位置セットする $(this).focus().get(0).setSelectionRange(cursorPosition, cursorPosition); }).change();