Метод Selection: addRange()
Базовая поддержка Широко распространена
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с марта 2017 года.
Синтаксис
addRange(range)
Параметры
Возвращаемое значение
None (undefined).
Примеры
Примечание: В настоящее время только Firefox поддерживает несколько выделенных областей, другие браузеры не добавят новые области выделения, если выделение уже содержит одну.
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", () => {
const selection = window.getSelection();
const strongElems = document.getElementsByTagName("strong");
if (selection.rangeCount > 0) {
selection.removeAllRanges();
}
for (const node of strongElems) {
const range = document.createRange();
range.selectNode(node);
selection.addRange(range);
}
});
Результат
Спецификации
| Спецификация |
|---|
| API выбора # dom-selection-addrange |
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
addRange |
1 | 12 | 1 | ≤12.1 | 3 | 18 | 4 | ≤12.1 | 1 | 1.0 | 4.4 |
См. также
-
Selection, интерфейс, к которому относится этот метод
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/Selection/addRange