jQuery / JavaScript中的自定义Scrollbar Maths

时间:2012-04-21 08:23:43

标签: javascript jquery scrollbar touch-event

我目前正在开发一个项目,该项目使用自定义滚动插件(由我编写),允许元素在触摸设备和桌面浏览器中滚动。一切正常(包括iOS的速度和减速度)。

然而,剩下的唯一问题是当用户滚动时计算滚动条的顶部(或左侧)位置。我用以下公式计算了滚动条的高度:

Math.round((container.height() / content.height()) * 100);

这似乎计算了条形的正确高度,但是现在我需要一个公式来计算当用户滚动时滚动条的位置应该移动多少。我已经通过谷歌检查过,并且无法找到很多用途,也在这里搜索了SO,欢迎任何评论。

我可以在公式中使用以下数据:

  • 集装箱高度
  • 内容高度
  • 当前滚动位置(scrollTop
  • 滚动条的高度

1 个答案:

答案 0 :(得分:4)

滚动条的位置应该通过以下公式计算:

Math.round((scrollbar.height * scrollTop / content.height());