Выбор: свойство rangeCount
Базовая Широко доступна
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с марта 2017 года.
Это Selection.rangeCount только для чтения возвращает количество выделенных областей в выборе.
Перед тем, как пользователь щелкнет по только что загруженной странице, rangeCount равно 0. После нажатия пользователем на странице, rangeCount равно 1, даже если выделение не видно.
Пользователь обычно может выделить только один диапазон за раз, поэтому rangeCount обычно равно 1. С помощью скриптов можно сделать так, чтобы выделение содержало более одного диапазона.
Браузеры Gecko позволяют осуществлять множественный выбор по ячейкам таблицы. Firefox позволяет выделять несколько областей в документе с помощью клавиши Ctrl+щелчок (если щелчок не происходит внутри элемента, которому назначено свойство CSS display: table-cell).
Значение
Числовое значение.
Примеры
Следующий пример будет отображать rangeCount каждую секунду. Выделите текст в браузере, чтобы увидеть, как оно меняется.
HTML
<table>
<tr>
<td>a.1</td>
<td>a.2</td>
</tr>
<tr>
<td>b.1</td>
<td>b.2</td>
</tr>
<tr>
<td>c.1</td>
<td>c.2</td>
</tr>
</table>
JavaScript
setInterval(() => {
console.log(window.getSelection().rangeCount);
}, 1000);
Результат
Откройте консоль, чтобы увидеть, сколько областей выделено. В браузерах Gecko вы можете выделять несколько диапазонов по ячейкам таблицы, удерживая нажатой клавишу Ctrl (или Cmd на macOS) во время перетаскивания мышкой.
Спецификации
| Спецификация |
|---|
| Selection API # dom-selection-rangecount |
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
rangeCount |
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/rangeCount