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

JavaScript确定HTML元素的内容是否溢出

狄海
2023-03-14
问题内容

我可以使用JavaScript检查(与滚动条无关)HTML元素的内容是否溢出?例如,一个长div,具有固定的小尺寸,overflow属性设置为visible,并且元素上没有滚动条。


问题答案:

通常,您可以比较client[Height|Width]scroll[Height|Width]以便检测到此情况…
…但是,当可见溢出时,这些值将相同。因此,检测程序必须考虑到这一点:

// Determines if the passed element is overflowing its bounds,
// either vertically or horizontally.
// Will temporarily modify the "overflow" style to detect this
// if necessary.
function checkOverflow(el)
{
   var curOverflow = el.style.overflow;

   if ( !curOverflow || curOverflow === "visible" )
      el.style.overflow = "hidden";

   var isOverflowing = el.clientWidth < el.scrollWidth 
      || el.clientHeight < el.scrollHeight;

   el.style.overflow = curOverflow;

   return isOverflowing;
}

在FF3,FF40.0.2,IE6,Chrome 0.2.149.30中进行了测试。



 类似资料:
  • 问题内容: 我可以使用JavaScript检查(与滚动条无关)HTML元素的内容是否溢出?例如,一个长div,具有固定的小尺寸,overflow属性设置为visible,并且元素上没有滚动条。 问题答案: 通常,您可以比较与以便检测到此情况… …但是,当可见溢出时,这些值将相同。因此,检测程序必须考虑到这一点: 在FF3,FF40.0.2,IE6,Chrome 0.2.149.30中进行了测试。

  • 问题内容: 检测元素是否已溢出的最简单方法是什么? 我的用例是,我想限制某个内容框的高度为300px。如果内部内容比这更高,我会溢出来。但是,如果溢出,我想显示一个“更多”按钮,但是如果不是,我不想显示该按钮。 有没有检测溢出的简便方法,还是有更好的方法? 问题答案: 如果只想显示更多内容的标识符,则可以使用纯CSS来实现。我为此使用纯滚动阴影。诀窍是使用。您的CSS看起来像这样:

  • 问题 你需要一个元素中的HTML内容 方法 可以使用Element中的HTML设置方法具体如下: Element div = doc.select("div").first(); // <div></div> div.html("<p>lorem ipsum</p>"); // <div><p>lorem ipsum</p></div> div.prepend("<p>First</p>");//

  • 本文向大家介绍CSS的overflow属性定义溢出元素内容区的内容会如何处理呢相关面试题,主要包含被问及CSS的overflow属性定义溢出元素内容区的内容会如何处理呢时的应答技巧和注意事项,需要的朋友参考一下 (默认值):溢出的内容会照常显示在元素内容区之外; :溢出的内容会被裁剪; :溢出的内容会出现在滚动区,通过滚动条滚动可以看到; :当内容溢出时表现同; 参考文档:overflow - C

  • 问题内容: 从这个链接,我假设首先应该将DOM整体加载到RAM中。 OM如何工作/如何加载?(以HTML格式) 但是后来我在Selenium中测试了超时异常。似乎甚至引发了超时异常,已经可以找到一些元素,因此它不是一个空对象。 但是我想知道,如何确保某些元素已经加载?例如HTML示例,如何确定所有元素都已加载?鉴于我实际上并不知道元素的数量。 代码试用: HTML示例: 问题答案: 根据你的代码试

  • 问题内容: 从这个链接,我假设首先应该将DOM整体加载到RAM中。 但是后来我在Selenium中测试了超时异常。似乎甚至引发了超时异常,已经可以找到一些元素,因此它不是一个空对象。 但是我想知道,如何确保某些元素已经加载?例如HTML示例,如何确定所有元素都已加载?鉴于我实际上并不知道元素的数量。 代码试用: HTML示例: 问题答案: 根据你的代码试验使用的是 ChromeDriver 和 C