使用jquery获取元素的可见高度而不是其实际高度

Tom*_* S. 7 html jquery height visible

这篇文章是有关这一个.请考虑阅读它.:-)

在我链接的帖子中,我认为如果div的可见高度大于另一个div的可见高度,我的问题的解决方案是更改链接的目标.在我的布局中,我所指的所有div都有1100px的高度.但这不是我想要的.我希望脚本能够获得访问者当前可见的div的高度,而不是它的真实高度.有没有办法用jQuery做到这一点?

提前致谢!

Bla*_*umb 7

你可以做的是将元素位置放在其父容器的顶部,然后从父容器高度中减去它.这将为您提供元素的可见高度.

$('#container').height() - $('#overflow').position().top
Run Code Online (Sandbox Code Playgroud)

这是一个显示这一点的小提琴.


Bry*_*llo 1

用另一个 DIV 包裹视口 DIV 的内容。将该 DIV 定位为读取所有内容的高度,如下所示:

JQuery: $('div#contents').height();

布局:

<div id="viewport">
  <div id="contents">...all your div contents...</div>
</div>
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助。祝你好运。