如何通过 JavaScript 获取文本的第 n 行?

Goo*_*bot 5 javascript

考虑一个简单的 html 元素为

<div id="test">
a long text without line break
</div>
Run Code Online (Sandbox Code Playgroud)

浏览器将根据字形和字体大小创建线条。浏览器对文本进行排列后(例如根据窗口宽度),如何通过JavaScript获取文本的行数?

例如:

  1. 如何获得总行数
  2. 如何获取当前窗口中出现的第一行?
  3. 如何获得第n行?

Col*_*inE 4

不,没有 API 可以让您在布局发生后访问呈现的文本。近似这一点的唯一方法非常老套,即一次将一个单词添加到容器中,然后查看它何时改变高度。请参阅这个相关问题:

用 jQuery 检测换行符?

是啊,谁会想到,连 jQuery 都做不到这一点!;-)