Detect selection direction in javascript

• 1 min read

If you work with the selection in editable text elements and needs to detect the direction the user is selecting text, i.e. from right to left and vice-versa, here the snippet, found here:

var sel = getSelection(),
position = sel.anchorNode.compareDocumentPosition(sel.focusNode),
backward = false;
// position == 0 if nodes are the same
if (!position && sel.anchorOffset > sel.focusOffset || 
  position === Node.DOCUMENT_POSITION_PRECEDING)
  backward = true;