确定元素相对于文档/正文/浏览器窗口的位置的最简单方法是什么?

现在我正在使用 .offsetLeft/offsetTop ,但是这个方法只给你相对于父元素的位置,所以你需要确定 body 元素有多少个父元素,以了解相对于 body/浏览器窗口/文档位置的位置。

这种方法也很麻烦。

最佳答案

您可以遍历 offsetParent 到 DOM 的顶层。

function getOffsetLeft( elem )
{
    var offsetLeft = 0;
    do {
      if ( !isNaN( elem.offsetLeft ) )
      {
          offsetLeft += elem.offsetLeft;
      }
    } while( elem = elem.offsetParent );
    return offsetLeft;
}

关于javascript - 查找元素相对于文档的位置,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5598743/

10-13 07:08