防止在jScrollPane上“跳转到顶部”

时间:2011-11-29 15:23:05

标签: javascript jquery jscrollpane

我在一个动态填充内容的-Box上使用jScrollPane jQuery-Plugin。

我的问题是,在旧内容的前面添加新内容时,maintainPosition选项不起作用。所以我编写了自己的代码,将Scrollhandle移回原来的位置。 代码工作正常,但是在添加新内容之后调用reinitialise()会在我的代码恢复它的位置之前将句柄移动到容器的顶部。这导致显示内容的短暂闪烁,这是非常令人不安的。

有人知道在调用“reinitialise()”后阻止滚动处理程序移动到顶部的方法吗?

3 个答案:

答案 0 :(得分:1)

因为没有人回答过这个问题,但我已经用我的问题创建了一个jsFiddle:

http://jsfiddle.net/hB4hE/1/

在第二个前置链接上完成的计算似乎可以解决问题。 但是如果你运行StepByStep,你会看到滚动条首先移动到顶部。 因为我在我的真实环境中添加了许多元素,所以这种跳跃行为通常是可见的。

那么你是否知道如何防止它跳跃?

答案 1 :(得分:1)

我没有找到任何集成解决方案,所以我创建了一个解决方法: 1.计算前置元素的高度 2.预备新元素 3.立即向下滚动一个等于新前置元素高度的距离

答案 2 :(得分:0)

尝试使用此设置:maintainPosition,然后您不必重新定位。

更多信息:http://jscrollpane.kelvinluck.com/settings.html#maintainPosition