From be350bbf08b45aecfe875666a5e0f7280820e0cf Mon Sep 17 00:00:00 2001 From: Ilya Kantor Date: Mon, 1 Jul 2019 12:27:17 +0300 Subject: [PATCH] Selection range, fixes --- .../07-microtask-queue/promiseQueue.png | Bin 14281 -> 14286 bytes .../07-microtask-queue/promiseQueue@2x.png | Bin 36391 -> 36360 bytes 1-js/99-js-misc/01-proxy/proxy-inherit.png | Bin 17381 -> 17381 bytes .../99-ui-misc/02-event-loop/promiseQueue.png | Bin 14281 -> 0 bytes .../02-event-loop/promiseQueue@2x.png | Bin 36391 -> 0 bytes 2-ui/99-ui-misc/02-selection-range/article.md | 579 ++++++++++++++++++ .../range-example-p-0-1.png | Bin 0 -> 9804 bytes .../range-example-p-0-1@2x.png | Bin 0 -> 18960 bytes .../range-example-p-1-3.png | Bin 0 -> 9795 bytes .../range-example-p-1-3@2x.png | Bin 0 -> 18482 bytes .../range-example-p-2-b-3-range.png | Bin 0 -> 22577 bytes .../range-example-p-2-b-3-range@2x.png | Bin 0 -> 49819 bytes .../range-example-p-2-b-3.png | Bin 0 -> 10176 bytes .../range-example-p-2-b-3@2x.png | Bin 0 -> 19253 bytes .../selection-direction-backward.png | Bin 0 -> 10721 bytes .../selection-direction-backward@2x.png | Bin 0 -> 21399 bytes .../selection-direction-forward.png | Bin 0 -> 10774 bytes .../selection-direction-forward@2x.png | Bin 0 -> 21431 bytes .../02-selection-range/selection-firefox.png | Bin 0 -> 46202 bytes .../selection-firefox@2x.png | Bin 0 -> 111321 bytes .../article.md | 0 .../eventLoop-full.png | Bin .../eventLoop-full@2x.png | Bin .../eventLoop.png | Bin .../eventLoop@2x.png | Bin .../99-ui-misc/03-event-loop/promiseQueue.png | Bin 0 -> 14286 bytes .../03-event-loop/promiseQueue@2x.png | Bin 0 -> 36360 bytes 6-data-storage/01-cookie/article.md | 8 +- figures.sketch | Bin 5363380 -> 5477225 bytes 29 files changed, 583 insertions(+), 4 deletions(-) delete mode 100644 2-ui/99-ui-misc/02-event-loop/promiseQueue.png delete mode 100644 2-ui/99-ui-misc/02-event-loop/promiseQueue@2x.png create mode 100644 2-ui/99-ui-misc/02-selection-range/article.md create mode 100644 2-ui/99-ui-misc/02-selection-range/range-example-p-0-1.png create mode 100644 2-ui/99-ui-misc/02-selection-range/range-example-p-0-1@2x.png create mode 100644 2-ui/99-ui-misc/02-selection-range/range-example-p-1-3.png create mode 100644 2-ui/99-ui-misc/02-selection-range/range-example-p-1-3@2x.png create mode 100644 2-ui/99-ui-misc/02-selection-range/range-example-p-2-b-3-range.png create mode 100644 2-ui/99-ui-misc/02-selection-range/range-example-p-2-b-3-range@2x.png create mode 100644 2-ui/99-ui-misc/02-selection-range/range-example-p-2-b-3.png create mode 100644 2-ui/99-ui-misc/02-selection-range/range-example-p-2-b-3@2x.png create mode 100644 2-ui/99-ui-misc/02-selection-range/selection-direction-backward.png create mode 100644 2-ui/99-ui-misc/02-selection-range/selection-direction-backward@2x.png create mode 100644 2-ui/99-ui-misc/02-selection-range/selection-direction-forward.png create mode 100644 2-ui/99-ui-misc/02-selection-range/selection-direction-forward@2x.png create mode 100644 2-ui/99-ui-misc/02-selection-range/selection-firefox.png create mode 100644 2-ui/99-ui-misc/02-selection-range/selection-firefox@2x.png rename 2-ui/99-ui-misc/{02-event-loop => 03-event-loop}/article.md (100%) rename 2-ui/99-ui-misc/{02-event-loop => 03-event-loop}/eventLoop-full.png (100%) rename 2-ui/99-ui-misc/{02-event-loop => 03-event-loop}/eventLoop-full@2x.png (100%) rename 2-ui/99-ui-misc/{02-event-loop => 03-event-loop}/eventLoop.png (100%) rename 2-ui/99-ui-misc/{02-event-loop => 03-event-loop}/eventLoop@2x.png (100%) create mode 100644 2-ui/99-ui-misc/03-event-loop/promiseQueue.png create mode 100644 2-ui/99-ui-misc/03-event-loop/promiseQueue@2x.png diff --git a/1-js/11-async/07-microtask-queue/promiseQueue.png b/1-js/11-async/07-microtask-queue/promiseQueue.png index 7f4ca5f5b7c7fc3447c49343cf898c37c6068ae1..f8a972d3127a86c5bf20cf9e3fe4703570de8f95 100644 GIT binary patch literal 14286 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

Z30zJY(voGKo;!s{&Y6Xd&#J@hVbRD6$< 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 literal 36391 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 diff --git a/1-js/99-js-misc/01-proxy/proxy-inherit.png b/1-js/99-js-misc/01-proxy/proxy-inherit.png index 84110b6d60268aa317e638102c3a8991ce3135bb..c5f88bccaa680fc8891df6cd3ebc9d29412d03aa 100644 GIT binary patch delta 3872 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 diff --git a/2-ui/99-ui-misc/02-event-loop/promiseQueue.png b/2-ui/99-ui-misc/02-event-loop/promiseQueue.png deleted file mode 100644 index 7f4ca5f5b7c7fc3447c49343cf898c37c6068ae1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14281 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 diff --git a/2-ui/99-ui-misc/02-selection-range/article.md b/2-ui/99-ui-misc/02-selection-range/article.md new file mode 100644 index 00000000..3b145361 --- /dev/null +++ b/2-ui/99-ui-misc/02-selection-range/article.md @@ -0,0 +1,579 @@ +libs: + - d3 + - domtree + +--- + +# Text Selection and Range + +In this chapter we'll cover text selection. + +JavaScript can do everything with it: get the existing selection, select/deselect it or its parts, remove the selected part from the document, wrap it into a tag, and so on. + +You can get a few ready to use recipes at the end, in "Summary" section. But you'll get much more if you read on. The underlying `Range` and `Selection` objects are easy to grasp, and then you'll need no recipes to make them do what you want. + +## Range + +The basic concept of selection is [Range](https://dom.spec.whatwg.org/#ranges): basically, a pair of "boundary points": range start and range end. + +Each point represented as a parent DOM node with the relative offset from its start. For an element node, the offset is a child number, for a text node it's the position in the text. + +First, we can create a range (the constructor has no parameters): + +```js +let range = new Range(); +``` + +Then we can set the boundaries using `range.setStart(node, offset)` and `range.setEnd(node, offset)`. + +For example, consider this fragment of HTML: + +```html +

Example: italic and bold

+``` + +Here's its DOM structure, note that here text nodes are important for us: + +
+ + + +Let's select `"Example: italic"`. That's two first children of `

`: + +![](range-example-p-0-1.png) + +```html run +

Example: italic and bold

+ + +``` + +- `range.setStart(p, 0)` -- sets the start at the 0th child of `

` (that's a text node `"Example: "`). +- `range.setEnd(p, 2)` -- spans the range up to (but not including) 2nd child of `

` (that's a text node `" and "`, but as the end is not included, the last selected node is ``). + +Here's a more flexible test stand where you try more variants: + +```html run autorun +

Example: italic and bold

+ +From – To + + +``` + +E.g. selecting from `1` to `4` gives range `italic and bold`. + +![](range-example-p-1-3.png) + +We don't have to use the same node in `setStart` and `setEnd`. A range may span across many unrelated nodes. + +### Selecting parts of text nodes + +Let's select the text partially, like this: + +![](range-example-p-2-b-3.png) + +That's also possible, we just need to set the start and the end as a relative offset in text nodes. + +We need to create a range, that: +- starts from position 2 in `

` first child (taking all but two first letters of "Example: ") +- ends at the position 3 in `` first child (taking first three letters of "bold"): + +```html run +

Example: italic and bold

+ + +``` + +The range object has following properties: + +![](range-example-p-2-b-3-range.png) + +- `startContainer`, `startOffset` -- node and offset of the start, + - in the example above: first text node inside `

` and `2`. +- `endContainer`, `endOffset` -- node and offset of the end, + - in the example above: first text node inside `` and `3`. +- `collapsed` -- boolean, `true` if the range starts and ends on the same point (so there's no content inside the range), + - in the example above: `false` +- `commonAncestorContainer` -- the nearest common ancestor of all nodes within the range, + - in the example above: `

` + +## Range methods + +There are many convenience methods to manipulate ranges. + +Set range start: + +- `setStart(node, offset)` set start at: position `offset` in `node` +- `setStartBefore(node)` set start at: right before `node` +- `setStartAfter(node)` set start at: right after `node` + +Set range end (similar methods): + +- `setEnd(node, offset)` set end at: position `offset` in `node` +- `setEndBefore(node)` set end at: right before `node` +- `setEndAfter(node)` set end at: right after `node` + +**As it was demonstrated, `node` can be both a text or element node: for text nodes `offset` skips that many of characters, while for element nodes that many child nodes.** + +Others: +- `selectNode(node)` set range to select the whole `node` +- `selectNodeContents(node)` set range to select the whole `node` contents +- `collapse(toStart)` if `toStart=true` set end=start, otherwise set start=end, thus collapsing the range +- `cloneRange()` creates a new range with the same start/end + +To manipulate the content within the range: + +- `deleteContents()` - remove range content from the document +- `extractContents()` - remove range content from the document and return as [DocumentFragment](info:modifying-document#document-fragment) +- `cloneContents()` - clone range content and return as [DocumentFragment](info:modifying-document#document-fragment) +- `insertNode(node)` -- insert `node` into the document at the beginning of the range +- `surroundContents(node)` -- wrap `node` around range content. For this to work, the range must contain both opening and closing tags for all elements inside it: no partial ranges like `abc`. + +With these methods we can do basically anything with selected nodes. + +Here's the test stand to see them in action: + +```html run autorun height=260 +Click buttons to run methods on the selection, "resetExample" to reset it. + +

Example: italic and bold

+ +

+ +``` + +There also exist methods to compare ranges, but these are rarely used. When you need them, please refer to the [spec](https://dom.spec.whatwg.org/#interface-range) or [MDN manual](https://developer.mozilla.org/en-US/docs/Web/API/Range). + + +## Selection + +`Range` is a generic object for managing selection ranges. We may create such objects, pass them around -- they do not visually select anything on their own. + +The document selection is represented by `Selection` object, that can be obtained as `window.getSelection()` or `document.getSelection()`. + +A selection may include zero or more ranges. At least, the [Selection API specification](https://www.w3.org/TR/selection-api/) says so. In practice though, only Firefox allows to select multiple ranges in the document by using `key:Ctrl+click` (`key:Cmd+click` for Mac). + +Here's a screenshot of a selection with 3 ranges, made in Firefox: + +![](selection-firefox.png) + +Other browsers support at maximum 1 range per selection. As we'll see, some of `Selection` methods imply that there may be many ranges, but again, in all browsers except Firefox, there's at maximum 1. + +## Selection properties + +Similar to a range, a selection has a start, called "anchor", and the end, called "focus". + +The main selection properties are: + +- `anchorNode` -- the node where the selection starts, +- `anchorOffset` -- the offset in `anchorNode` where the selection starts, +- `focusNode` -- the node where the selection ends, +- `focusOffset` -- the offset in `focusNode` where the selection ends, +- `isCollapsed` -- `true` if selection selects nothing (empty range), or doesn't exist. +- `rangeCount` -- count of ranges in the selection, maximum `1` in all browsers except Firefox. + +````smart header="Selection end may be in the document before start" +There are many ways to select the content, depending on the user agent: mouse, hotkeys, taps on a mobile etc. + +Some of them, such as a mouse, allow the same selection can be created in two directions: "left-to-right" and "right-to-left". + +If the start (anchor) of the selection goes in the document before the end (focus), this selection is said to have "forward" direction. + +E.g. if the user starts selecting with mouse and goes from "Example" to "italic": + +![](selection-direction-forward.png) + +Otherwise, if they go from the end of "italic" to "Example", the selection is directed "backward", its focus will be before the anchor: + +![](selection-direction-backward.png) + +That's different from `Range` objects that are always directed forward: the range start can't be after its end. +```` + +## Selection events + +There are events on to keep track of selection: + +- `elem.onselectstart` -- when a selection starts. + - May trigger on any element. + - Preventing default action makes the selection not start. +- `document.onselectionchange` -- when a selection changes. + - Triggers only on `document`. + +## Selection tracking demo + +Here's a small demo that shows selection boundaries +dynamically as it changes: + +```html run height=80 +

Select me: italic and bold

+ +From – To + +``` + +To get the whole selection: +- As text: just call `document.getSelection().toString()`. +- As DOM nodes: get the underlying ranges and call their `cloneContents()` method (only first range if we don't support Firefox multiselection). + +And here's the demo of getting the selection both as text and as DOM nodes: + +```html run height=100 +

Select me: italic and bold

+ +Cloned: +
+As text: + + +``` + +## Selection methods + +Selection methods to add/remove ranges: + +- `getRangeAt(i)` -- get i-th range, starting from `0`. In all browsers except firefox, only `0` is used. +- `addRange(range)` -- add `range` to selection. All browsers except Firefox ignore the call, if the selection already has an associated range. +- `removeRange(range)` -- remove `range` from the selection. +- `removeAllRanges()` -- remove all ranges. +- `empty()` -- alias to `removeAllRanges`. + +Also, there are methods to manipulate the selection range directly: + +- `collapse(node, offset)` -- replace selected range with a new one that starts and ends at the given `node`, at position `offset`. +- `setPosition(node, offset)` -- alias to `collapse`. +- `collapseToStart()` - collapse (replace with an empty range) to selection start, +- `collapseToEnd()` - collapse to selection end, +- `extend(node, offset)` - move focus of the selection to the given `node`, position `offset`, +- `setBaseAndExtent(anchorNode, anchorOffset, focusNode, focusOffset)` - replace selection range with the given anchor and focus. All content in-between them is selected. +- `selectAllChildren(node)` -- select all children of the `node`. +- `deleteFromDocument()` -- remove selected content from the document. +- `containsNode(node, allowPartialContainment = false)` -- checks whether the selection contains `node` (partically if the second argument is `true`) + +So, for many tasks we can call `Selection` methods, no need to access the underlying `Range` object. + +For example, selecting the whole contents of the paragraph: + +```html run +

Select me: italic and bold

+ + +``` + +The same thing using ranges: + +```html run +

Select me: italic and bold

+ + +``` + +```smart header="To select, remove the existing selection first" +If the selection already exists, empty it first with `removeAllRanges()`. And then add ranges. Otherwise, all browsers except Firefox ignore new ranges. + +The exception is some selection methods, that replace the existing selection, like `setBaseAndExtent`. +``` + +## Selection in form controls + +Form elements, such as `input` and `textarea` provide [API for selection in their values](https://html.spec.whatwg.org/#textFieldSelection). + +As the value is a pure text, not HTML, these methods to not use `Selection` or `Range` objects, they are much simpler. + +- `input.select()` -- selects everything in the text control, +- `input.selectionStart` -- position of selection start (writeable), +- `input.selectionEnd` -- position of selection start (writeable), +- `input.selectionDirection` -- direction, one of: "forward", "backward" or "none" (if e.g. selected with a double mouse click), +- `input.setSelectionRange(start, end, [direction])` -- change the selection to span from `start` till `end`, in the given direction (optional). + +To modify the content of the selection: + +- `input.setRangeText(replacement, [start], [end], [selectionMode])` -- replace a range of text with the new text. If the `start` and `end` arguments are not provided, the range is assumed to be the selection. + +The last argument, `selectionMode`, determines how the selection will be set after the text has been replaced. The possible values are: + +- `"select"` -- the newly inserted text will be selected. +- `"start"` -- the selection range collapses just before the inserted text. +- `"end"` -- the selection range collapses just after the inserted text. +- `"preserve"` -- attempts to preserve the selection. This is the default. + +For example, this code uses `onselect` event to track selection: + +```html run + +
+From – To + + +``` + +The `document.onselectionchange` event should not trigger for selections inside a form control, according to the [spec](https://w3c.github.io/selection-api/#dfn-selectionchange), as it's not related to `document` selection and ranges. Some browsers generate it though. + +**When nothing is selected, `selectionStart` and `selectionEnd` both equal the cursor position.** + +Or, to rephrase, when nothing is selected, the selection is collapsed at cursor position. + +We can use it to move cursor: + +```html run + + + +``` + +...Or to insert something "at the cursor" using `setRangeText`. + +Here's an button that replaces the selection with `"TEXT"` and puts the cursor immediately after it. If the selection is empty, the text is just inserted at the cursor position: + +```html run + +
+ + + + + +``` + + +## Making unselectable + +To make something unselectable, there are three ways: + +1. Use CSS property `user-select: none`. + + ```html run + +
Selectable
Unselectable
Selectable
+ ``` + + This doesn't allow the selection to start at `elem`. But the user may start the selection elsewhere and include `elem` into it. + + Then `elem` will become a part of `document.getSelection()`, so the selection actully happens, but its content is usually ignored in copy-paste. + + +2. Prevent default action in `onselectstart` or `mousedown` events. + + ```html run +
Selectable
Unselectable
Selectable
+ + + ``` + + This prevents starting the selection on `elem`, but the visitor may start it at another element, then extend to `elem`. + + That's convenient when there's another event handler on the same action that triggers the select. So we disable the selection to avoid conflict. + + And `elem` contents still be copied. + +3. We can also clear the selection post-factum after it happens with `document.getSelection().empty()`. That's rarely used, as this causes unwanted blinking as the selection appears-disappears. + +## Summary + +We covered two different APIs for selections: + +1. For document: `Selection` and `Range` objects. +2. For `input`, `textarea`: additional methods and properties. + +The second API is very simple, as it works with text. + +The most used recipes are probably: + +1. Getting the selection: + ```js run + let selection = document.getSelection(); + + // then apply Range methods to selection.getRangeAt(0) + // or to all ranges if supporting multi-select + for (let i = 0; i < selection; i++) { + cloned.append(selection.getRangeAt(i).cloneContents()); + } + ``` +2. Setting the selection + ```js run + let selection = document.getSelection(); + + // directly: + selection.setBaseAndExtent(...from...to...); + + // or create range and: + selection.removeAllRanges(); + selection.addRange(range); + ``` + +Another important thing to know about selection: the cursor position in editable elements, like `