<分区>
您可以使用 getSelection()
获取当前的 Selection
,使用 getRangeAt(0)
获取其 Range
。里面有一堆信息:起始节点、结束节点、字符、位置等。
没有的是选区的维度。
我能做的(我想,我还没有尝试过,因为它很复杂),是获取选定的文本,将其放入包含元素,使元素内联并测量其宽度(然后撤消所有操作以不要弄乱 DOM)。也许吧。
但必须有更简单的方法。
它不必处理多个元素的选择,但它应该处理多行。
也许有一个技巧可以制作屏幕截图并按颜色测量像素?