Range

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since March 2017.

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

Range может быть создан с помощью метода createRange, у объекта Document. Или объект Range можно получить с помощью метода getRangeAt, у объекта Selection. А также с помощью конструктора Range().

Свойства

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

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

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

Возвращает Node внутри которого Range начинается.

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

Возвращает Node внутри которого Range заканчивается .

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

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

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

Возвращает число равное расположению endContainer в Range .

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

Returns a number representing where in the startContainer the Range starts.

Конструктор

Range() Экспериментальная возможность

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

Методы

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

Range.setStart()

Назначают начальную позицию Range.

Range.setEnd()

Назначает конечную позицию Range.

Range.setStartBefore()

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

Range.setStartAfter()

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

Range.setEndBefore()

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

Range.setEndAfter()

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

Range.selectNode()

Выбирает Range to содержащий Node и его контент.

Range.selectNodeContents()

Выбирает Range содержащий контент Node.

Range.collapse()

Схлопывает Range до одной из граничных точек.

Range.cloneContents()

Возвращает DocumentFragment содержащийся в узле Range.

Range.deleteContents()

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

Range.extractContents()

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

Range.insertNode()

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

Range.surroundContents()

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

Range.compareBoundaryPoints()

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

Range.cloneRange()

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

Range.detach()

Освобождает Range от использования для улучшения производительности .

Range.toString()

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

Range.compareNode() Не стандартно

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

Range.comparePoint() Экспериментальная возможность

Возвращает -1, 0, или 1 в зависимости от того, находиться ли referenceNode перед, внутри, или после Range.

Range.createContextualFragment() Экспериментальная возможность

Возвращает DocumentFragment созданный из полученной строки с кодом.

Range.getBoundingClientRect() Экспериментальная возможность

Возвращает объект ClientRect object which bounds the entire contents of the Range; this would be the union of all the rectangles returned by range.getClientRects().

Range.getClientRects() Экспериментальная возможность

Returns a list of ClientRect objects that aggregates the results of Element.getClientRects() for all the elements in the Range.

Range.intersectsNode() Экспериментальная возможность

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

Range.isPointInRange() Экспериментальная возможность

Returns a boolean indicating whether the given point is in the Range.

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

Specification
DOM Standard
# interface-range
DOM Parsing and Serialization
# extensions-to-the-range-interface
CSSOM View Module
# extensions-to-the-range-interface

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

BCD tables only load in the browser

Смотрите также