Spec-Zone.ru › OpenJDK 25

Интерфейс Range

public interface Range

См. также спецификацию Document Object Model (DOM) Level 2 Traversal and Range Specification.

С какого момента:
9, DOM Level 2

Краткое описание полей

Модификатор и тип Поле Описание
static final short END_TO_END
Сравнивает конечную граничную точку sourceRange с конечной граничной точкой объекта Range, для которого вызывается compareBoundaryPoints.
static final short END_TO_START
Сравнивает конечную граничную точку sourceRange с начальной граничной точкой объекта Range, для которого вызывается compareBoundaryPoints.
static final short START_TO_END
Сравнивает начальную граничную точку sourceRange с конечной граничной точкой объекта Range, для которого вызывается compareBoundaryPoints.
static final short START_TO_START
Сравнивает начальную граничную точку sourceRange с начальной граничной точкой объекта Range, для которого вызывается compareBoundaryPoints.

Краткое описание методов

Модификатор и тип Метод Описание
DocumentFragment cloneContents()
Дублирует содержимое объекта Range
Range cloneRange()
Создает новый Range, граничные точки которого совпадают с граничными точками данного Range.
void collapse(boolean toStart)
Сворачивает Range в одну из его граничных точек
short compareBoundaryPoints(short how, Range sourceRange)
Сравнивает граничные точки двух объектов Range в документе.
void deleteContents()
Удаляет содержимое объекта Range из содержащего его документа или фрагмента документа без возврата ссылки на удаленное содержимое.
void detach()
Вызывается для указания того, что Range больше не используется и реализация может освободить любые ресурсы, связанные с этим Range.
DocumentFragment extractContents()
Перемещает содержимое Range из содержащего его документа или фрагмента документа в новый DocumentFragment.
boolean getCollapsed()
TRUE, если Range свернут
Node getCommonAncestorContainer()
Глубочайший общий контейнер предка для двух граничных точек диапазона.
Node getEndContainer()
Узел, в котором заканчивается Range
int getEndOffset()
Смещение внутри конечного узла Range.
Node getStartContainer()
Узел, в котором начинается Range
int getStartOffset()
Смещение внутри начального узла Range.
void insertNode(Node newNode)
Вставляет узел в Document или DocumentFragment в начале диапазона Range.
void selectNode(Node refNode)
Выделяет узел и его содержимое
void selectNodeContents(Node refNode)
Выделяет содержимое внутри узла
void setEnd(Node refNode, int offset)
Задает атрибуты, описывающие конец Range.
void setEndAfter(Node refNode)
Устанавливает конец Range после узла
void setEndBefore(Node refNode)
Устанавливает конечную позицию перед узлом.
void setStart(Node refNode, int offset)
Задает атрибуты, описывающие начало Range.
void setStartAfter(Node refNode)
Устанавливает начальную позицию после узла
void setStartBefore(Node refNode)
Устанавливает начальную позицию перед узлом
void surroundContents(Node newParent)
Переподчиняет содержимое Range заданному узлу и вставляет узел в начальную позицию Range.
String toString()
Возвращает содержимое Range в виде строки.

Подробное описание полей

START_TO_START

static final short START_TO_START
Сравнивает начальную граничную точку sourceRange с начальной граничной точкой объекта Range, для которого вызывается compareBoundaryPoints.
См. также:
  • Постоянные значения полей

START_TO_END

static final short START_TO_END
Сравнивает начальную граничную точку sourceRange с конечной граничной точкой объекта Range, для которого вызывается compareBoundaryPoints.
См. также:
  • Постоянные значения полей

END_TO_END

static final short END_TO_END
Сравнивает конечную граничную точку sourceRange с конечной граничной точкой объекта Range, для которого вызывается compareBoundaryPoints.
См. также:
  • Постоянные значения полей

END_TO_START

static final short END_TO_START
Сравнивает конечную граничную точку sourceRange с начальной граничной точкой объекта Range, для которого вызывается compareBoundaryPoints.
См. также:
  • Постоянные значения полей

Подробное описание методов

getStartContainer

Node getStartContainer() throws DOMException
Узел, в котором начинается Range
Исключения:
DOMException - INVALID_STATE_ERR: генерируется, если detach() уже был вызван для этого объекта.

getStartOffset

int getStartOffset() throws DOMException
Смещение внутри начального узла Range.
Исключения:
DOMException - INVALID_STATE_ERR: генерируется, если detach() уже был вызван для этого объекта.

getEndContainer

Node getEndContainer() throws DOMException
Узел, в котором заканчивается Range
Исключения:
DOMException - INVALID_STATE_ERR: генерируется, если detach() уже был вызван для этого объекта.

getEndOffset

int getEndOffset() throws DOMException
Смещение внутри конечного узла Range.
Исключения:
DOMException - INVALID_STATE_ERR: генерируется, если detach() уже был вызван для этого объекта.

getCollapsed

boolean getCollapsed() throws DOMException
TRUE, если Range свернут
Исключения:
DOMException - INVALID_STATE_ERR: генерируется, если detach() уже был вызван для этого объекта.

getCommonAncestorContainer

Node getCommonAncestorContainer() throws DOMException
Глубочайший общий контейнер предка для двух граничных точек диапазона.
Исключения:
DOMException - INVALID_STATE_ERR: генерируется, если detach() уже был вызван для этого объекта.

setStart

void setStart(Node refNode, int offset) throws RangeException, DOMException
Задает атрибуты, описывающие начало Range.
Параметры:
refNode - Значение refNode. Этот параметр должен отличаться от null.
offset - Значение startOffset.
Исключения:
RangeException - INVALID_NODE_TYPE_ERR: генерируется, если refNode или предок refNode является узлом Entity, Notation или DocumentType.
DOMException - INDEX_SIZE_ERR: генерируется, если offset отрицателен или больше количества дочерних единиц в refNode. Дочерними единицами являются 16-битные единицы, если refNode относится к типу CharacterData (например, узел Text или Comment) или ProcessingInstruction. Во всех остальных случаях дочерними единицами являются узлы Node.
INVALID_STATE_ERR: генерируется, если detach() уже был вызван для этого объекта.
WRONG_DOCUMENT_ERR: генерируется, если refNode был создан из документа, отличного от того, который создал этот диапазон.

setEnd

void setEnd(Node refNode, int offset) throws RangeException, DOMException
Задает атрибуты, описывающие конец Range.
Параметры:
refNode - Значение refNode. Этот параметр должен отличаться от null.
offset - Значение endOffset.
Исключения:
RangeException - INVALID_NODE_TYPE_ERR: генерируется, если refNode или предок refNode является узлом Entity, Notation или DocumentType.
DOMException - INDEX_SIZE_ERR: генерируется, если offset отрицателен или больше количества дочерних единиц в refNode. Дочерними единицами являются 16-битные единицы, если refNode относится к типу CharacterData (например, узел Text или Comment) или ProcessingInstruction. Во всех остальных случаях дочерними единицами являются узлы Node.
INVALID_STATE_ERR: генерируется, если detach() уже был вызван для этого объекта.
WRONG_DOCUMENT_ERR: генерируется, если refNode был создан из документа, отличного от того, который создал этот диапазон.

setStartBefore

void setStartBefore(Node refNode) throws RangeException, DOMException
Устанавливает начальную позицию перед узлом
Параметры:
refNode - Range начинается перед refNode
Исключения:
RangeException - INVALID_NODE_TYPE_ERR: генерируется, если корневой контейнер refNode не является узлом Attr, Document или DocumentFragment, либо если refNode является узлом Document, DocumentFragment, Attr, Entity или Notation.
DOMException - INVALID_STATE_ERR: генерируется, если detach() уже был вызван для этого объекта.
WRONG_DOCUMENT_ERR: генерируется, если refNode был создан из документа, отличного от того, который создал этот диапазон.

setStartAfter

void setStartAfter(Node refNode) throws RangeException, DOMException
Устанавливает начальную позицию после узла
Параметры:
refNode - Range начинается после refNode
Исключения:
RangeException - INVALID_NODE_TYPE_ERR: генерируется, если корневой контейнер refNode не является узлом Attr, Document или DocumentFragment, либо если refNode является узлом Document, DocumentFragment, Attr, Entity или Notation.
DOMException - INVALID_STATE_ERR: генерируется, если detach() уже был вызван для этого объекта.
WRONG_DOCUMENT_ERR: генерируется, если refNode был создан из документа, отличного от того, который создал этот диапазон.

setEndBefore

void setEndBefore(Node refNode) throws RangeException, DOMException
Устанавливает конечную позицию перед узлом.
Параметры:
refNode - Range заканчивается перед refNode
Исключения:
RangeException - INVALID_NODE_TYPE_ERR: генерируется, если корневой контейнер refNode не является узлом Attr, Document или DocumentFragment, либо если refNode является узлом Document, DocumentFragment, Attr, Entity или Notation.
DOMException - INVALID_STATE_ERR: генерируется, если detach() уже был вызван для этого объекта.
WRONG_DOCUMENT_ERR: генерируется, если refNode был создан из документа, отличного от того, который создал этот диапазон.

setEndAfter

void setEndAfter(Node refNode) throws RangeException, DOMException
Устанавливает конец Range после узла
Параметры:
refNode - Range заканчивается после refNode.
Исключения:
RangeException - INVALID_NODE_TYPE_ERR: генерируется, если корневой контейнер refNode не является узлом Attr, Document или DocumentFragment, либо если refNode является узлом Document, DocumentFragment, Attr, Entity или Notation.
DOMException - INVALID_STATE_ERR: генерируется, если detach() уже был вызван для этого объекта.
WRONG_DOCUMENT_ERR: генерируется, если refNode был создан из документа, отличного от того, который создал этот диапазон.

collapse

void collapse(boolean toStart) throws DOMException
Сворачивает Range в одну из его граничных точек
Параметры:
toStart - Если TRUE, сворачивает Range к его началу; если FALSE, сворачивает его к концу.
Исключения:
DOMException - INVALID_STATE_ERR: генерируется, если detach() уже был вызван для этого объекта.

selectNode

void selectNode(Node refNode) throws RangeException, DOMException
Выделяет узел и его содержимое
Параметры:
refNode - Узел для выделения.
Исключения:
RangeException - INVALID_NODE_TYPE_ERR: генерируется, если предок refNode является узлом Entity, Notation или DocumentType, либо если refNode является узлом Document, DocumentFragment, Attr, Entity или Notation.
DOMException - INVALID_STATE_ERR: генерируется, если detach() уже был вызван для этого объекта.
WRONG_DOCUMENT_ERR: генерируется, если refNode был создан из документа, отличного от того, который создал этот диапазон.

selectNodeContents

void selectNodeContents(Node refNode) throws RangeException, DOMException
Выделяет содержимое внутри узла
Параметры:
refNode - Узел, содержимое которого нужно выделить
Исключения:
RangeException - INVALID_NODE_TYPE_ERR: генерируется, если refNode или предок refNode является узлом Entity, Notation или DocumentType.
DOMException - INVALID_STATE_ERR: генерируется, если detach() уже был вызван для этого объекта.
WRONG_DOCUMENT_ERR: генерируется, если refNode был создан из документа, отличного от того, который создал этот диапазон.

compareBoundaryPoints

short compareBoundaryPoints(short how, Range sourceRange) throws DOMException
Сравнивает граничные точки двух объектов Range в документе.
Параметры:
how - Код, представляющий тип сравнения, как определено выше.
sourceRange - Range, с которым сравнивается текущий Range.
Возвращает:
-1, 0 или 1 в зависимости от того, находится ли соответствующая граничная точка Range соответственно до, на той же позиции или после соответствующей граничной точки sourceRange.
Исключения:
DOMException - WRONG_DOCUMENT_ERR: генерируется, если два объекта Range находятся не в одном Document или DocumentFragment.
INVALID_STATE_ERR: генерируется, если detach() уже был вызван для этого объекта.

deleteContents

void deleteContents() throws DOMException
Удаляет содержимое объекта Range из содержащего его документа или фрагмента документа без возврата ссылки на удаленное содержимое.
Исключения:
DOMException - NO_MODIFICATION_ALLOWED_ERR: генерируется, если какая-либо часть содержимого Range доступна только для чтения или если какие-либо из узлов, содержащих любую часть содержимого Range, доступны только для чтения.
INVALID_STATE_ERR: генерируется, если detach() уже был вызван для этого объекта.

extractContents

DocumentFragment extractContents() throws DOMException
Перемещает содержимое Range из содержащего его документа или фрагмента документа в новый DocumentFragment.
Возвращает:
DocumentFragment, содержащий извлеченное содержимое.
Исключения:
DOMException - NO_MODIFICATION_ALLOWED_ERR: генерируется, если любая часть содержимого Range доступна только для чтения или любой из узлов, содержащих какую-либо часть содержимого Range, доступен только для чтения.
HIERARCHY_REQUEST_ERR: генерируется, если узел DocumentType должен быть извлечен в новый DocumentFragment.
INVALID_STATE_ERR: генерируется, если detach() уже был вызван для этого объекта.

cloneContents

DocumentFragment cloneContents() throws DOMException
Дублирует содержимое объекта Range
Возвращает:
DocumentFragment, содержащий содержимое, эквивалентное данному Range.
Исключения:
DOMException - HIERARCHY_REQUEST_ERR: генерируется, если узел DocumentType должен быть извлечен в новый DocumentFragment.
INVALID_STATE_ERR: генерируется, если detach() уже был вызван для этого объекта.

insertNode

void insertNode(Node newNode) throws DOMException, RangeException
Вставляет узел в Document или DocumentFragment в начале диапазона Range. Если контейнером является узел Text, он будет разделен в начале Range (как если бы метод splitText узла Text был выполнен в точке вставки), и вставка произойдет между двумя полученными узлами Text. Соседние узлы Text не будут автоматически объединяться. Если вставляемый узел является узлом DocumentFragment, вместо самого узла DocumentFragment будут вставлены его дочерние узлы.
Параметры:
newNode - Узел, который необходимо вставить в начало Range
Исключения:
DOMException - NO_MODIFICATION_ALLOWED_ERR: генерируется, если контейнер-предок начала Range доступен только для чтения.
WRONG_DOCUMENT_ERR: генерируется, если newNode и контейнер начала Range были созданы не из одного документа.
HIERARCHY_REQUEST_ERR: генерируется, если контейнер начала Range относится к типу, который не допускает дочерних элементов типа newNode, или если newNode является предком контейнера.
INVALID_STATE_ERR: генерируется, если detach() уже был вызван для этого объекта.
RangeException - INVALID_NODE_TYPE_ERR: генерируется, если newNode является узлом Attr, Entity, Notation или Document.

surroundContents

void surroundContents(Node newParent) throws DOMException, RangeException
Переподчиняет содержимое Range заданному узлу и вставляет узел в начальную позицию Range.
Параметры:
newParent - Узел, которым необходимо окружить содержимое.
Исключения:
DOMException - NO_MODIFICATION_ALLOWED_ERR: генерируется, если контейнер-предок любой из граничных точек Range доступен только для чтения.
WRONG_DOCUMENT_ERR: генерируется, если newParent и контейнер начала Range были созданы не из одного документа.
HIERARCHY_REQUEST_ERR: генерируется, если контейнер начала Range относится к типу, который не допускает дочерних элементов типа newParent, или если newParent является предком контейнера, или если node в итоге получит дочерний узел типа, недопустимого для типа node.
INVALID_STATE_ERR: генерируется, если detach() уже был вызван для этого объекта.
RangeException - BAD_BOUNDARYPOINTS_ERR: генерируется, если Range частично выбирает нетекстовый узел.
INVALID_NODE_TYPE_ERR: генерируется, если node является узлом Attr, Entity, DocumentType, Notation, Document или DocumentFragment.

cloneRange

Range cloneRange() throws DOMException
Создает новый Range, граничные точки которого совпадают с граничными точками данного Range.
Возвращает:
Дублированный Range.
Исключения:
DOMException - INVALID_STATE_ERR: генерируется, если detach() уже был вызван для этого объекта.

toString

String toString() throws DOMException
Возвращает содержимое Range в виде строки. Эта строка содержит только символы данных без какой-либо разметки.
Переопределяет:
toString в классе Object
Возвращает:
Содержимое Range.
Исключения:
DOMException - INVALID_STATE_ERR: генерируется, если detach() уже был вызван для этого объекта.

detach

void detach() throws DOMException
Вызывается для указания того, что Range больше не используется и реализация может освободить любые ресурсы, связанные с этим Range. Последующие вызовы любых методов или геттеров атрибутов для этого Range приведут к выбросу исключения DOMException с кодом ошибки INVALID_STATE_ERR.
Исключения:
DOMException - INVALID_STATE_ERR: генерируется, если detach() уже был вызван для этого объекта.

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в разделе Документация по Java SE, где содержатся более подробные описания, ориентированные на разработчиков, с концептуальными обзорами, определениями терминов, обходными путями и рабочими примерами кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком компании Oracle и/или ее дочерних компаний в США и других странах.
Авторские права © 1993, 2025, Oracle и/или ее дочерние компании, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/25/docs/api/java.xml/org/w3c/dom/ranges/Range.html

Spec-Zone.ru

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