如何确定隐藏/溢出文本是否位于元素的顶部或底部

slo*_*ife 2 html javascript

我想扩展一下Shog9的答案

如何从javascript确定html元素是否有溢出的内容

我想知道隐藏的文本是在包含元素的顶部还是底部(或两者都没有).

最好的方法是什么?

Joe*_*oel 5

你可以scrollLeftscrollTopShog的答案结合起来.

特别:

// Author: Shog9
// Determines if the passed element is overflowing its bounds,
// either vertically or horizontally.
// Will temporarily modify the "overflow" style to detect this
// if necessary.
// Modified to check if the user has scrolled right or down.
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;

   // check scroll location
   var isScrolledRight = el.scrollLeft > 0;
   var isScrolledDown = el.scrollTop > 0;

   el.style.overflow = curOverflow;

   return isOverflowing;
}
Run Code Online (Sandbox Code Playgroud)