Range.selectNodeContents() - Web API 接口参考 编辑
Range.selectNodeContents()
方法用于设置 Range
,使其包含一个 Node
的内容。
Range
的起始和结束节点的父节点即为引用节点。 startOffset
为 0, endOffset
则是引用节点包含的字符数或子节点个数。
语法
range.selectNodeContents(referenceNode);
参数
示例
range = document.createRange();
referenceNode = document.getElementsByTagName("div")[0];
range.selectNodeContents(referenceNode);
实时样例
这个例子让用户使用按钮选择或取消选择一个段落。Document.createRange()
、 Range.selectNodeContents()
和 Selection.addRange()
用于选择内容。Window.getSelection()
和 Selection.removeAllRanges()
用于取消选择。
HTML
<p id="p"><b>Use the buttons below</b> to select or deselect the contents of this paragraph.</p> <button id="select-button">Select paragraph</button> <button id="deselect-button">Deselect paragraph</button>
JavaScript
const p = document.getElementById('p'); const selectButton = document.getElementById('select-button'); const deselectButton = document.getElementById('deselect-button'); selectButton.addEventListener('click', e => { // Clear any current selection const selection = window.getSelection(); selection.removeAllRanges(); // Select paragraph const range = document.createRange(); range.selectNodeContents(p); selection.addRange(range); }); deselectButton.addEventListener('click', e => { const selection = window.getSelection(); selection.removeAllRanges(); });
结果
规范
规范 | 状态 | 注释 |
---|---|---|
DOM Range.selectNodeContents() | Living Standard | 无变化 |
Document Object Model (DOM) Level 2 Traversal and Range Specification Range.selectNodeContents() | Obsolete | 初始规范 |
浏览器兼容性
BCD tables only load in the browser
参见
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论