Range:setEnd() 方法
Range.setEnd() 方法将一个 Range 的结束位置设置为指定节点中给定偏移量处。如果设置的结束点高于(在文档中更靠前)开始点,则会生成一个折叠的范围,开始点和结束点都设置为指定的结束位置。
语法
js
setEnd(endNode, endOffset)
参数
返回值
无(undefined)。
异常
InvalidNodeTypeErrorDOMException-
endNode指定的节点是 doctype 节点;范围端点不能位于 doctype 节点内。 IndexSizeErrorDOMException-
endOffset指定的值大于或等于节点的长度,或者小于零。
用法说明
如果 endNode 是 Text、Comment 或 CDataSection 类型的 Node,则 endOffset 是从 endNode 开始处的字符数。对于其他 Node 类型,endOffset 是 endNode 开始处之间的子节点数。
示例
js
const range = document.createRange();
const endNode = document.getElementsByTagName("p").item(3);
const endOffset = endNode.childNodes.length;
range.setEnd(endNode, endOffset);
注意: setEnd() 通常与 setStart() 结合使用,以完整配置一个范围。
规范
| 规范 |
|---|
| DOM # dom-range-setend |
浏览器兼容性
加载中…