Javascript 获取句子开头和结尾的坐标

Javascript 获取句子开头和结尾的坐标,javascript,coordinates,Javascript,Coordinates,我有一个,里面有一个句子。比如: <span>A sentence residing within a span</span> 顶部和左侧根据单词“This”的字母“T”进行评估 案例二:判决 This is a sentence inline ... ... ... ... ... ... This is a sentence broke into two lines. 顶部根据单词“This”的字母“T”进行评估,左侧根据“a”进行评估 有没有办法获得一个句子的

我有一个
,里面有一个句子。比如:

<span>A sentence residing within a span</span>
顶部和左侧根据单词“This”的字母“T”进行评估

案例二:判决

This is a sentence inline
... ... ... ... ... ... This is
a sentence broke into two lines.
顶部根据单词“This”的字母“T”进行评估,左侧根据“a”进行评估


有没有办法获得一个句子的两个端点的坐标?

span.getBoundingClientRect()

span.getBoundingClientRect()

如果需要句子第一个字符左上角和最后一个字符右下角的坐标,可以使用元素的方法。是的


请注意,这些坐标是相对于视口而不是相对于文档的。如果需要使用这些坐标定位其他元素,则需要考虑滚动。

如果需要句子第一个字符左上角和最后一个字符右下角的坐标,可以使用元素的方法。是的


请注意,这些坐标是相对于视口而不是相对于文档的。如果需要使用这些坐标定位其他元素,则需要考虑滚动。

Is
getBoundingClientRect()
适用于所有浏览器(特别是mac的safari)?这将为您提供一个包含整个跨度的矩形,而不是跨度内容开始和结束的坐标,这就是我认为OP想要的。@Tim,不,仔细看案例二。哦,是的,看起来你是对的。但是,OP要求协调“句子的两个端点”,这意味着另一件事。啊,好吧,不管OP是什么意思,我想我们之间已经回答了。是不是
getBoundingClientRect()
适用于所有浏览器(特别是mac的safari)?这会给你一个包含整个跨度的矩形,而不是跨度内容开始和结束的坐标,这是我认为OP想要的。@Tim,不是,仔细看案例二。哦,是的,看起来你是对的。但是,OP要求协调“句子的两个端点”,这意味着另一件事。好吧,不管OP是什么意思,我想我们已经回答了。
var rects = span.getClientRects();
var startTopLeft = { x: rects[0].left, y: rects[0].top; };
var lastRect = rects[rects.length - 1];
var endBottomRight = { x: lastRect.right, y: lastRect.bottom; };