---
title: range
slug: Web/API/Range
tags:
- API
- DOM
- Reference
translation_of: Web/API/Range
---
{{ APIRef("DOM") }}
Range
객체는 주어진 document 내의 텍스트 노드들의 부분들(parts)과 document의 단편화에 포함된 노드들을 나타내고 있다.
Range 오브젝트는 Document
객체에 포함되어 있는 createRange
메소드를 사용하여 생성할 수 있다. 또한 selection
객체에 포함되어 있는 getRangeAt
메소드를 사용하여 추출할 수 있다.
{{domxref("Range.Range()", "Range()")}} 생성자 또한 사용 가능하다.
속성
- collapsed
- Range의 시작점과 끝점이 같인 위치인지를 알 수 있는 boolean 값을 반환한다.
- commonAncestorContainer
- startContainer와 endContainer 노드들을 포함한 최상위 노드를 반환한다.
- endContainer
- Range의 끝 위치를 포함하는 Node를 반환한다.
- endOffset
- endContainer 안에 있는 Range 끝을 나타내는 숫자(offset)를 반환한다.
- startContainer
- Range의 시작 위치를 포함하는 Node를 반환한다.
- startOffset
- startContainer 안에 있는 Range 시작을 나타내는 숫자(offset)를 반환한다.
생성자
- {{ domxref("Range.Range()", "Range()") }} {{experimental_inline}}
Range
객체의 시작과 끝에 따라 전역 {{domxref("Document")}} 와 함께 Range
객체를 반환한다.
메서드
상속한 메서드는 없다.
- {{ domxref("Range.setStart()")}}
Range 의 시작 위치를 설정한다
.
- {{ domxref("Range.setEnd()")}}
Range 의 끝 위치를 설정한다
.
- {{ domxref("Range.setStartBefore()")}}
- 다른 {{ domxref("Node") }} 와 관계가 있는
Range 의 시작 위치를 설정한다
.
- {{ domxref("Range.setStartAfter()")}}
- 다른 {{ domxref("Node") }} 와 관계가 있는
Range 의 시작 위치를 설정한다
.
- {{ domxref("Range.setEndBefore()")}}
- 다른 {{ domxref("Node") }} 와 관계가 있는
Range 의 끝 위치를 설정한다
.
- {{ domxref("Range.setEndAfter()")}}
- 다른 {{ domxref("Node") }} 와 관계가 있는
Range 의 끝 위치를 설정한다
.
- {{ domxref("Range.selectNode()")}}
Range 에
{{ domxref("Node") }} 와 그것의 내용물을 포함 시킨다
.
- {{ domxref("Range.selectNodeContents()")}}
Range 에
{{ domxref("Node") }} 의 내용물을 포함 시킨다
.
- {{ domxref("Range.collapse()")}}
Range
의 경계 지점 중 하나로 영역을 붕괴 시킨다.
- {{ domxref("Range.cloneContents()")}}
Range
의 노드들을 복사하여 {{ domxref("DocumentFragment") }} 를 반환한다.
- {{ domxref("Range.deleteContents()")}}
- {{ domxref("Document") }} 로 부터
Range
의 컨텐츠들을 삭제한다.
- {{ domxref("Range.extractContents()")}}
- {{ domxref("Document") }} 트리로 부터
Range
의 컨텐츠들을 domxref("DocumentFragment") }} 로 이동시킨다.
- {{ domxref("Range.insertNode()")}}
Range
의 맨 앞에 {{ domxref("Node") }}를 삽입한다.
- {{ domxref("Range.surroundContents()")}}
- Moves content of a
Range
into a new {{ domxref("Node") }}.
- {{ domxref("Range.compareBoundaryPoints()")}}
- Compares the boundary points of the
Range
with another Range
.
- {{ domxref("Range.cloneRange()")}}
- Returns a
Range
object with boundary points identical to the cloned Range
.
- {{ domxref("Range.detach()")}}
- Releases the
Range
from use to improve performance.
- {{ domxref("Range.toString()")}}
- Returns the text of the
Range
.
- {{ domxref("Range.compareNode()")}} {{ Obsolete_inline }}{{non-standard_inline}}
- Returns a constant representing whether the {{domxref("Node")}} is before, after, inside, or surrounding the range.
- {{ domxref("Range.comparePoint()")}} {{experimental_inline}}
- Returns -1, 0, or 1 indicating whether the point occurs before, inside, or after the
Range
.
- {{ domxref("Range.createContextualFragment()")}}{{experimental_inline}}
- Returns a {{ domxref("DocumentFragment") }} created from a given string of code.
- {{ domxref("Range.getBoundingClientRect()") }} {{experimental_inline}}
- Returns a {{ domxref("ClientRect") }} object which bounds the entire contents of the
Range
; this would be the union of all the rectangles returned by {{ domxref("range.getClientRects()") }}.
- {{ domxref("Range.getClientRects()") }} {{experimental_inline}}
- Returns a list of {{ domxref("ClientRect") }} objects that aggregates the results of {{ domxref("Element.getClientRects()") }} for all the elements in the
Range
.
- {{ domxref("Range.intersectsNode()")}} {{experimental_inline}}
- Returns a
boolean
indicating whether the given node intersects the Range
.
- {{ domxref("Range.isPointInRange()")}} {{experimental_inline}}
- Returns a
boolean
indicating whether the given point is in the Range
.
명세
Specification |
Status |
Comment |
{{SpecName('DOM WHATWG', '#interface-range', 'Range')}} |
{{Spec2('DOM WHATWG')}} |
Do not use RangeException anymore, use DOMException instead.
Made the second parameter of collapse() optional.
Added the methods isPointInRange() , comparePoint() , and intersectsNode() .
Added the constructor Range() . |
{{SpecName('DOM Parsing', '#extensions-to-the-range-interface', 'Extensions to Range')}} |
{{Spec2('DOM Parsing')}} |
Added the method createContextualFragment() . |
{{SpecName('CSSOM View', '#extensions-to-the-range-interface', 'Extensions to Range')}} |
{{Spec2('CSSOM View')}} |
Added the methods getClientRects() and getBoundingClientRect() . |
{{SpecName('DOM2 Traversal_Range', 'ranges.html#Level-2-Range-Interface', 'Range')}} |
{{Spec2('DOM2 Traversal_Range')}} |
Initial specification. |
브라우저 호환성
{{Compat("api.Range")}}
같이 보기