2015-11-24 13:52:37 +00:00
|
|
|
---
|
|
|
|
title: DOM Selection
|
|
|
|
category: JavaScript
|
2020-07-05 13:13:06 +00:00
|
|
|
intro: |
|
|
|
|
Quick introduction to the HTML [DOM selection API](https://devdocs.io/dom/selection).
|
2015-11-24 13:52:37 +00:00
|
|
|
---
|
|
|
|
|
2020-07-05 13:13:06 +00:00
|
|
|
## Reference
|
|
|
|
{: .-three-column}
|
|
|
|
|
|
|
|
### Selection
|
2015-11-24 13:52:37 +00:00
|
|
|
|
|
|
|
```js
|
2020-07-05 13:13:06 +00:00
|
|
|
var sel = document.getSelection()
|
2015-11-24 13:52:37 +00:00
|
|
|
```
|
|
|
|
|
2020-07-05 13:13:06 +00:00
|
|
|
See: <https://devdocs.io/dom/selection>
|
|
|
|
|
|
|
|
### Methods
|
2015-11-24 13:52:37 +00:00
|
|
|
|
|
|
|
```js
|
2020-07-05 13:13:06 +00:00
|
|
|
sel.removeAllRanges() // deselects
|
|
|
|
sel.addRange(range) // sets a selection
|
|
|
|
sel.removeRange(range) // remove a range
|
2015-11-24 13:52:37 +00:00
|
|
|
```
|
|
|
|
|
|
|
|
```js
|
2020-07-05 13:13:06 +00:00
|
|
|
sel.rangeCount
|
|
|
|
sel.getRangeAt(0) // get the 0th range
|
2015-11-24 13:52:37 +00:00
|
|
|
```
|
|
|
|
|
|
|
|
### Collapsing
|
|
|
|
|
|
|
|
```js
|
2020-07-05 13:13:06 +00:00
|
|
|
sel.collapse(parent, offset)
|
|
|
|
sel.collapseToEnd()
|
|
|
|
sel.collapseToStart()
|
|
|
|
sel.isCollapsed
|
2015-11-24 13:52:37 +00:00
|
|
|
```
|
|
|
|
|
|
|
|
```js
|
2020-07-05 13:13:06 +00:00
|
|
|
sel.containsNode(node)
|
2015-11-24 13:52:37 +00:00
|
|
|
```
|
|
|
|
|
|
|
|
### Deleting
|
|
|
|
|
|
|
|
```js
|
2020-07-05 13:13:06 +00:00
|
|
|
sel.deleteFromDocument()
|
2015-11-24 13:52:37 +00:00
|
|
|
```
|
|
|
|
|
|
|
|
### Events
|
|
|
|
|
|
|
|
```js
|
|
|
|
document.addEventListener('selectionchange', () => {})
|
|
|
|
```
|