当前位置: 首页 > 面试题库 >

如何计算DOM元素内的文本行?我可以吗?

严瑞
2023-03-14
问题内容

我想知道是否有一种方法可以计算div中的行数。假设我们有一个像这样的div:

<div id="content">hello how are you?</div>

取决于许多因素,div可以包含一行,两行或什至四行文本。脚本有什么办法知道吗?

换句话说,自动中断完全可以在DOM中表示吗?


问题答案:

我坚信现在不可能了。是的,但是。

IE7的getClientRects实现完全符合我的要求。尝试刷新它以改变窗口宽度,并查看第一个元素中的行数如何相应变化。这是该页面中javascript的关键行:

var rects = elementList[i].getClientRects();
var p = document.createElement('p');
p.appendChild(document.createTextNode('\'' + elementList[i].tagName + '\' element has ' + rects.length + ' line(s).'));

对于我来说不幸的是,Firefox总是为每个元素返回一个客户端矩形,而IE8现在也是如此。(Martin
Honnen的页面今天可以使用,因为IE是在IE兼容视图中呈现它的;按IE8中的F12可以使用不同的模式播放。)

这真是难过;这真是伤心。看起来Firefox再次实现了字面意义,但毫无价值的实现赢得了微软有用的支持。还是我错过了新的getClientRects可以帮助开发人员的情况?



 类似资料:
  • 我试图计算select元素中的选项数,以及DOM中某个类的元素数。 我需要比较这两个总数来得出赛普拉斯的断言。 我可以选择所需的选项,并使用each()对它们进行迭代,然后以这种方式递增一个计数器。然而,它是异步的,也是一个笨拙的解决方案。我确信我的cy.get()生成的对象有一个length属性,我就是看不懂它。 这是我期望的事情之一。它将未定义的日志记录到控制台。 我知道我的别名很好,并且我的

  • 我有问题,因为我想在内部包围一些,所以我需要知道。 哪些DOM元素可以是tr的子元素?(我知道div不能。)

  • 问题内容: 我正在通过XML数据生成pdf文件。 我将段落元素的高度计算为: 但是这种方法不能正常工作。 你能给我个主意吗? 问题答案: 您的问题很奇怪。根据您的问题的标题,您想知道字符串的高度,但是您的代码显示您要求的是字符串的宽度。 请看一下FoobarFilmFestival示例。 如果是实例,则可以使用: 当我们使用12号字体时,这将返回基线以上的高度和基线以下的高度。您可能知道,字体大小

  • 问题内容: 我需要动态设置DIV元素内的文本。什么是最好的浏览器安全方法?我有可用的prototypejs和scriptaculous。 该函数如下所示: 问题答案: 我将使用支持纯文本,HTML代码段或定义方法的任何JavaScript对象的Prototype 方法。

  • 本文向大家介绍行内元素可以设置padding和margin吗?相关面试题,主要包含被问及行内元素可以设置padding和margin吗?时的应答技巧和注意事项,需要的朋友参考一下 行内元素的纵向padding和margin都是不考虑的,这是css规范定义的。 inline元素确实可以设置垂直方向的 padding 和 margin 值,但是 inline 元素的 margin 和 padding

  • 假设我有一个XML文件,如: 我想读取xslt转换器中的CDATA元素“name”,并将其值放在标记值的某个位置。我该怎么做?抱歉,我们不能对CDATA的内容使用xpath。是否有一些破解/解决方法?我希望在XSLT中严格执行此操作。