首页 > 解决方案 > 获取当前 div 内容的百分比

问题描述

如何获得用户所在的当前 div 内的滚动位置百分比?在具有多个文本屏幕的单个 html 页面中有一些 div。

因此,当用户在 div 的开头时,它应该是 0%,当他滚动到 div 的中间时,它应该是 50%,最后是 100%。如果他超出了下一个 div,它会像以前一样相对于新 div 重置为 0%。寻找 css/and 或 javascript 解决方案(不是 jquery)。

想在粘性标题中使用此信息。

标签: javascriptcssscrollsticky

解决方案


您可以通过以下方式获取页面的当前位置:

document.getElementsByTagName("html")[0].scrollTop

然后您需要获取 div 的位置和高度并计算百分比。

这是有关如何获取滚动事件挂钩的示例: https ://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_element_scrollleft


推荐阅读