范围:setEnd() 方法
**Range.setEnd()
** 方法将 Range
的结束位置设置为指定节点 x 中给定偏移量的位置。将结束点设置为高于(在文档中更高)起始点将导致一个折叠的范围,其起始点和结束点都设置为指定的结束位置。
语法
js
setEnd(endNode, endOffset)
参数
返回值
无 (undefined
).
异常
InvalidNodeTypeError
DOMException
-
由
endNode
指定的节点是文档类型节点;范围端点不能位于文档类型节点内。 IndexSizeError
DOMException
-
由
endOffset
指定的值大于或等于节点的长度或小于零。
使用说明
如果 endNode
是 Node
类型为 Text
、Comment
或 CDataSection
,则 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 |
浏览器兼容性
BCD 表仅在启用 JavaScript 的浏览器中加载。