Range 是 JavaScript 中精确控制文档文本选区的核心对象,由起点和终点定义,支持跨节点操作,需结合 Selection 实现界面反馈。JavaScript 中的 Range 对象是精确控制文档中任意文本片段选择的核心工具,比 selection API 更底层、更灵活,适合实现高亮、富文本编辑、光标定位、跨节点选区等复杂场景。理解 Range 的基本构成Range 表示文档中连续的一段内容,由起点(startContainer / startOffset)和终点(endContainer / endOffset)共同定义。起点和终点可以是文本节点、元素节点,甚至跨不同父级------这是它能处理复杂结构的关键。创建方式主要有两种:document.createRange():新建空 Range,再用 setStart()、setEnd() 或 selectNode() 等方法设定范围 getSelection().getRangeAt(0):从当前用户选区中提取已存在的 Range(需确保有选区)常见实用操作示例以下操作均基于一个已创建并配置好的 range 实例: 有道翻译AI助手 有道翻译提供即时免费的中文、英语、日语、韩语、法语、德语、俄语、西班牙语、葡萄牙语、越南语、印尼语、意大利语、荷兰语、泰语全文翻译、网页翻译、文档翻译、PDF翻
相关推荐
每天都要进步哦2 分钟前
SQL单行函数详解:字符、数字、日期、转换与通用函数全解析不剪发的Tony老师6 分钟前
VeloxDB:一款免费开源的轻量级数据库管理工具dotnet9010 分钟前
批量生成所有表的修改脚本@Mike@18 分钟前
06-数据库学习笔记(存储模型与数据压缩)Python私教38 分钟前
Django 6.1 RC1 实测:FETCH_PEERS 两条 SQL 解决 N+1,select_related 还需要吗?玉鸯1 小时前
Agent 的任务编排:从 System Prompt 到 Hierarchical Multi-AgentPython私教1 小时前
Django 6.0 自带 Tasks 到底能不能替代 Celery?跑完 3 组后台任务后我有答案了南凉北往1 小时前
PandasAI连接LLM对MySQL数据库进行数据分析回眸不遇1 小时前
详谈 QT 布局 QLayout::SizeConstraint 和 QSizePolicy 对 QWidget 尺寸的影响我的xiaodoujiao1 小时前
快速学习Python基础知识详细图文教程14--模块