This is an experimental technologyCheck the Browser compatibility table carefully before using this in production.
The Selection.addRange()
method adds a Range
to a Selection
.
Syntax
selection.addRange(range);
Parameters
Example
Currently only Firefox supports multiple selection ranges, other browsers will not add new ranges to the selection if it already contains one.
HTML
<p>I <strong>insist</strong> that you <strong>try</strong> selecting the <strong>strong words</strong>.</p>
<button>Select strong words</button>
JavaScript
let button = document.querySelector('button');
button.addEventListener('click', function () {
let selection = window.getSelection();
let strongs = document.getElementsByTagName('strong');
if (selection.rangeCount > 0) {
selection.removeAllRanges();
}
for (let i = 0; i < strongs.length; i++) {
let range = document.createRange();
range.selectNode(strongs[i]);
selection.addRange(range);
}
});
Result
Specifications
Specification | Status | Comment |
Selection APIThe definition of 'Selection.addRange()' in that specification. | Working Draft | Current |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Update compatibility data on GitHub
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Chrome
Full support 1 |
Edge
Full support 12 |
Firefox
Full support Yes |
IE
? |
Opera
Full support Yes |
Safari
Full support Yes |
WebView Android
Full support Yes |
Chrome Android
Full support Yes |
Firefox Android
Full support Yes |
Opera Android
Full support Yes |
Safari iOS
Full support Yes |
Samsung Internet Android
Full support Yes |
Legend
- Full support
- Full support
- Compatibility unknown
- Compatibility unknown
- Experimental. Expect behavior to change in the future.'
- Experimental. Expect behavior to change in the future.
See also
Selection
, the interface this method belongs to
Selection.addRange() by Mozilla Contributors is licensed under CC-BY-SA 2.5.