javascript - Firefox:通过三次单击选择段落会产生出乎我意料的行为

标签 javascript firefox selection paragraph getselection

三次单击鼠标选择一个段落将 document.getSelection().leftOffset 设置为 0(看起来正确),但 rightOffset 属性设置为 1,因此,处理选择的代码会产生仅与所选段落中的第一个字符一致的结果。这是一个错误,还是我遗漏了什么?

最佳答案

我假设您指的是anchorOffsetfocusOffset,而不是leftOffsetrightOffset

无论如何,是的,您遗漏了一些东西:anchorOffsetfocusOffset不一定与文本节点相关。相反,它们可以相对于某个元素,在这种情况下,偏移量是相关选择边界之前的容器节点(anchorNodefocusNode)的子节点数。在您的情况下,选择范围从段落父级的第零个子级(即开头)的开头延伸到第一个子级(即段落本身)之后的点。

关于javascript - Firefox:通过三次单击选择段落会产生出乎我意料的行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11051184/

相关文章:

javascript - 如何为我的文本框使用此 trim 功能

firefox - 从附加工具包修改 Firefox 下载对话框的内容

javascript - 是否可以在没有任何用户交互的情况下创建选择对象?

ios - 滚动后 SwiftUI 列表单元格未正确显示选择状态

javascript - Node 生成子进程在 aws Node 10 lambda 中的 exec 子进程之后不执行命令

javascript - 有没有办法将 6502 程序集添加到 Google Code Prettify 中?

javascript - Firefox 47 上的 pushpad 错误 : navigator. serviceWorker 未定义

svg - 选择多个 svg 元素并在 Raphael.js 中拖动它们

JavaScript:ActiveXObject MSXML2.XMLHTTP 在成功加载时不返回 XML...?

html - Bootstrap 输入组内数字输入的溢出宽度