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

View in English Always switch to English

Range:Range() 构造函数

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨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);

结果

规范

Specification
DOM
# ref-for-dom-range-range②

浏览器兼容性

参见