2017-06-13 120 views
0

我计算的滚动位置和比例使用

var filled = ($(document).scrollTop()/$(document).height()); 

我得到0.8596615031325553代替1-在文档底部的html文件的高度,为什么会这样? 我必须在我的代码中的其他地方动态使用这个比例,但是由于它提供了意想不到的值,我无法使用它。我该怎么办??

+0

两者之间的差异应该是'window.innerHeight'。 –

+0

所以我需要添加'window.innerHeight'到'$(document).scrollTop()'来获得期望值? –

+0

小提琴:https://jsfiddle.net/khrismuc/v52qkxvo/ –

回答

1

$(document).scrollTop()返回多远向下当前视图的顶部从页面的顶部(即,用户已向下滚动多远)。 $(document).height())返回整个页面的高度,从最顶部的像素到最底部的像素。

为了弥补这一点,你可以做这样的事情:

var filled = (($(document).scrollTop() + $(window).height())/$(document).height()); 
+0

我将它添加到答案中。 – StuntHacks

+0

它也不起作用,它在文档底部给出1.843853431717268 –

+0

即使复制了确切的行,也不行吗? – StuntHacks

相关问题