Spec-Zone.ru › Web APIs

Диапазон

Базовая линия Широко доступна *

Эта функция хорошо отработана и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с марта 2017 года.

* Некоторые части этой функции могут иметь различный уровень поддержки.

  • Подробнее
  • Полная совместимость
  • Отправить отзыв

Интерфейс Range представляет фрагмент документа, который может содержать узлы и части текстовых узлов.

Диапазон можно создать, используя метод Document.createRange(). Объекты диапазона также можно получить, используя метод getRangeAt() объекта Selection или метод caretRangeFromPoint() объекта Document.

Также доступен конструктор Range().

AbstractRange Range

Свойства экземпляра

Наследуемых свойств нет.

Range.collapsed Только для чтения

Возвращает логическое значение, указывающее, находятся ли начальная и конечная точки диапазона в одной позиции.

Range.commonAncestorContainer Только для чтения

Возвращает самый глубокий Node, который содержит узлы startContainer и endContainer.

Range.endContainer Только для чтения

Возвращает Node, в пределах которого заканчивается Range.

Range.endOffset Только для чтения

Возвращает число, представляющее, где в endContainer заканчивается Range.

Range.startContainer Только для чтения

Возвращает Node, в пределах которого начинается Range.

Range.startOffset Только для чтения

Возвращает число, представляющее, где в startContainer начинается Range.

Конструктор

Range()

Возвращает объект Range с глобальным Document в качестве начала и конца.

Методы экземпляра

Наследуемых методов нет.

Range.collapse()

Сжимает Range до одной из его граничных точек.

Range.compareBoundaryPoints()

Сравнивает граничные точки Range с другой Range.

Range.compareNode() Устаревший Нестандартный

Возвращает константу, представляющую, находится ли Node перед, после, внутри или вокруг диапазона.

Range.comparePoint()

Возвращает -1, 0 или 1, указывая, предшествует ли точка, содержится ли она в или следует за Range.

Range.cloneContents()

Возвращает DocumentFragment, копируя узлы Range.

Range.cloneRange()

Возвращает объект Range с граничными точками, идентичными клонированному Range.

Range.createContextualFragment()

Возвращает DocumentFragment, созданный из заданной строки кода.

Range.deleteContents()

Удаляет содержимое Range из Document.

Range.detach()

Не выполняет никаких действий. Сохранено для совместимости.

Range.extractContents()

Перемещает содержимое Range из дерева документа в DocumentFragment.

Range.getBoundingClientRect()

Возвращает объект DOMRect, который ограничивает все содержимое Range; это будет объединение всех прямоугольников, возвращаемых методом range.getClientRects().

Range.getClientRects()

Возвращает список объектов DOMRect, которые агрегируют результаты Element.getClientRects() для всех элементов в Range.

Range.isPointInRange()

Возвращает boolean, указывающее, находится ли данная точка в Range.

Range.insertNode()

Вставляет Node в начале Range.

Range.intersectsNode()

Возвращает boolean, указывающее, пересекает ли данный узел Range.

Range.selectNode()

Устанавливает Range для содержания Node и его содержимого.

Range.selectNodeContents()

Устанавливает Range для содержания содержимого Node.

Range.setEnd()

Устанавливает конечную позицию Range.

Range.setStart()

Устанавливает начальную позицию Range.

Range.setEndAfter()

Устанавливает конечную позицию Range относительно другого Node.

Range.setEndBefore()

Устанавливает конечную позицию Range относительно другого Node.

Range.setStartAfter()

Устанавливает начальную позицию Range относительно другого Node.

Range.setStartBefore()

Устанавливает начальную позицию Range относительно другого Node.

Range.surroundContents()

Перемещает содержимое Range в новый Node.

Range.toString()

Возвращает текст Range.

Спецификации

Спецификация
DOM
# interface-range
DOM Парсинг и Сериализация
# extensions-to-the-range-interface
CSSOM View Модуль
# extensions-to-the-range-interface

Совместимость с браузерами

Десктоп Мобильные
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на IOS Samsung Internet WebView Android
Range 29 15 24 16 8 29 24 16 8 2.0 4.4
Range 1 12
1Начиная с Firefox 13, объект Range выбрасывает DOMException, как определено в DOM 4, вместо RangeException, определенного в предыдущих спецификациях.
9 1 18
4Начиная с Firefox для Android 14, объект Range выбрасывает DOMException, как определено в DOM 4, вместо RangeException, определенного в предыдущих спецификациях.
10.1 1 1.0 4.4
cloneContents 1 12 1 9 1 18 4 10.1 1 1.0 4.4
cloneRange 1 12 1 9 1 18 4 10.1 1 1.0 4.4
collapse 1 12 1 9 1 18 4 10.1 1 1.0 4.4
collapsed 1 12 1 9 1 18 4 10.1 1 1.0 4.4
commonAncestorContainer 1 12 1 9 1 18 4 10.1 1 1.0 4.4
compareBoundaryPoints 1 12 1 9 1 18 4 10.1 1 1.0 4.4
compareNode 1–45 Нет 1–3 15–32 3 18–45 Нет 14–32 1 1.0–5.0 4.4–45
comparePoint 1 17 1 ≤12.1 3 18 4 ≤12.1 1 1.0 4.4
createContextualFragment 1 12 1 ≤12.1 1 18 4 ≤12.1 1 1.0 4.4
deleteContents 1 12 1 9 1 18 4 10.1 1 1.0 4.4
detach
1Начиная с Chrome 37, этот метод является no-op и не оказывает никакого влияния.
12
1–15Начиная с Firefox 15.0, этот метод является no-op и не оказывает никакого влияния.
9Начиная с Opera 24, этот метод является no-op и не оказывает никакого влияния.
1Начиная с Safari 10, этот метод является no-op и не оказывает никакого влияния, см. ошибку 148454.
18Начиная с Chrome Android 37, этот метод является no-op и не оказывает никакого влияния.
4–15Начиная с Firefox для Android 15.0, этот метод является no-op и не оказывает никакого влияния.
10.1Начиная с Opera 24, этот метод является no-op и не оказывает никакого влияния.
1Начиная с Safari на iOS 10, этот метод является no-op и не оказывает никакого влияния, см. ошибку 148454.
1.0Начиная с Samsung Internet 3.0, этот метод является no-op и не оказывает никакого влияния.
4.4Начиная с WebView Android 37, этот метод является no-op и не оказывает никакого влияния.
endContainer 1 12 1 9 1 18 4 10.1 1 1.0 4.4
endOffset 1 12 1 9 1 18 4 10.1 1 1.0 4.4
extractContents 1 12 1 9 1 18 4 10.1 1 1.0 4.4
getBoundingClientRect 4 12 4 ≤12.1 5 18 4 ≤12.1 4 1.0 ≤37
getClientRects 4 12 4 ≤12.1 5 18 4 ≤12.1 4 1.0 ≤37
insertNode 1 12 1 9 1 18 4 10.1 1 1.0 4.4
intersectsNode 1 17 17 ≤12.1 3 18 19 ≤12.1 1 1.0 4.4
isPointInRange 1 15 1 ≤12.1 3 18 4 ≤12.1 1 1.0 4.4
selectNode 1 12 1 9 1 18 4 10.1 1 1.0 4.4
selectNodeContents 1 12 1 9 1 18 4 10.1 1 1.0 4.4
setEnd 1 12 1 9 1 18 4 10.1 1 1.0 4.4
setEndAfter 1 12 1 9 1 18 4 10.1 1 1.0 4.4
setEndBefore 1 12 1 9 1 18 4 10.1 1 1.0 4.4
setStart 1 12 1 9 1 18 4 10.1 1 1.0 4.4
setStartAfter 1 12 1 9 1 18 4 10.1 1 1.0 4.4
setStartBefore 1 12 1 9 1 18 4 10.1 1 1.0 4.4
startContainer 1 12 1 9 1 18 4 10.1 1 1.0 4.4
startOffset 1 12 1 9 1 18 4 10.1 1 1.0 4.4
surroundContents 1 12 1 9 1 18 4 10.1 1 1.0 4.4
toString 1 12 1 9 1 18 4 10.1 1 1.0 4.4

См. также

  • Индекс интерфейсов DOM

© 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/Range

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API