此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。

View in English Always switch to English

Range:Range() 构造函数

基线 广泛可用

自 2017年4月 起,此特性已在主流浏览器中得到支持,可在大多数设备和浏览器版本中正常使用。

Range() 构造函数返回一个新创建的 Range 对象,其起始点和结束点是全局 Document 对象。

语法

js
new Range()

参数

无。

示例

在这个示例中,我们使用 Range() 构造函数创建一个新的范围,并通过 Range.setStartBefore()Range.setEndAfter() 方法设置其起始和结束位置。然后我们使用 window.getSelection()Selection.addRange() 方法选择该范围。

HTML

html
<p>第一段。</p>
<p>第二段。</p>
<p>第三段。</p>
<p>第四段。</p>

JavaScript

js
const paragraphs = document.querySelectorAll("p");

// 创建新的范围
const range = new Range();

// 从第二个段落开始设置范围
range.setStartBefore(paragraphs[1]);

// 将范围结束于第三个段落
range.setEndAfter(paragraphs[2]);

// 获取窗口的选择范围
const selection = window.getSelection();

// 将范围添加到窗口的选择范围中
selection.addRange(range);

结果

规范

规范
DOM
# ref-for-dom-range-range②

浏览器兼容性

参见