HTMLInputElement: selectionDirection property
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
The selectionDirection
property of the HTMLInputElement
interface is a string that indicates the direction in which the user is selecting the text.
Value
A string. It can have one of the following values:
forward
-
The user is extending the selection towards the end of the input text.
backward
-
The user is extending the selection towards the start of the input text.
none
-
The user is not extending the selection.
Note: On Windows, the direction indicates the position of the caret relative to the selection: a "forward" selection has the caret at the end of the selection and a "backward" selection has the caret at the start of the selection. Windows has no "none" direction.
Note: On Mac, the direction indicates which end of the selection is affected when the user adjusts the size of the selection using the arrow keys with the Shift modifier: the "forward" direction means the end of the selection is modified, and the "backward" direction means the start of the selection is modified. The "none" direction is the default on Mac, it indicates that no particular direction has yet been selected. The user sets the direction implicitly when first adjusting the selection, based on which directional arrow key was used.
Examples
HTML
<label for="selectionDirection">selectionDirection property</label>
<input type="text" id="selectionDirection" value="MDN" />
<p id="direction"></p>
JavaScript
const textSelectionDirection = document.querySelector("#selectionDirection");
const pConsole = document.querySelector("#direction");
pConsole.textContent =
"Selection direction : " + textSelectionDirection.selectionDirection;
Result
Specifications
Specification |
---|
HTML Standard # dom-textarea/input-selectiondirection-dev |
Browser compatibility
BCD tables only load in the browser
See also
HTMLTextAreaElement.selectionDirection
propertyHTMLInputElement.selectionStart
propertyHTMLInputElement.selectionEnd
propertyHTMLInputElement.setSelectionRange
method