【发布时间】:2015-04-24 23:40:16
【问题描述】:
问题:
计算的数学公式是什么(无论
scrollHeight 文档)滚动条的底部距离它的总底部(这将是页面的末尾)有多远。因此,例如,当滚动条位于顶部时,我会说它底部与文档底部的距离百分比为 0%,并且当它完全滚动时一路(垂直),它将是 100%。
我的目标:
我的目标是计算底部和特定位置之间有多少像素,例如相对于视口在底部上方的 3%。同样,文档高度应该没有任何意义。 3% 是相对于视口而言的 3%。
已知变量:
var P = 3 // in %
var totalHeight = document.documentElement.scrollHeight;
var viewportHeight = document.documentElement.clientHeight;
【问题讨论】:
-
我相信您正在寻找
offset()=>viewportHeight - document.getElementById('mybottom').offset().top或类似的东西。 -
@TimVermaelen - 如果您在此处打开它,您可以在控制台中轻松查看它。使用
getElementById与我需要的无关。想象一下,body 中根本没有节点,并且它具有来自 CSS 的动态高度...... -
jsfiddle.net/ywy9ndao ? 编辑: 似乎只在 Chrome 中有效
-
@blex - 可怕的代码。我修好了 - jsfiddle.net/ywy9ndao/1
-
@vsync 哈哈,我不想在发布之前费心修复它,因为我什至不确定那是你想要的。我只是随机尝试了一些东西。
标签: javascript dom browser scroll