2012-08-25 32 views
0

我正在开发一个在(Windows)平板电脑上运行的Web应用程序。我不会详细说明,但基本上用户有一个任务列表,并在完成时检查每个任务。即使没有剩下任何东西,是否可以保持(自动)滚动?

当他们检查一个任务时,我使用jQuery(scrollTop())进行滚动,以便他们可以在同一个地方点击下一个任务,而不必手动滚动(这在这个特殊的平板电脑上很棘手)。

问题是,当他们可以到最后5或6个任务时,它是div的结尾,所以滚动停止,这很奇怪,因为它们已经用来在同一个地方点击。

我想保持滚动,但我不知道如何。

我的猜测只是在底部添加空白,但我不知道如何检测到底时是否添加空白。

回答

1

在页面加载中查找最后一个列表项。然后添加空格,以便它可以滚动到页面的顶部。我为我的一个网站做了这个,以便当人们访问锚点时,它们出现在页面的顶部。恨他们时,他们不是我自己!

var $lastinput = $('input').last(); 
if ($lastinput.length > 0) { 
    var headerTop = $lastinput.offset().top; 
    var spacing = $(window).height() - ($('body').height() - headerTop); 
    $('#setpageheight').height(spacing); 
} 

在内容区域的底部,我有一个零高度DIV叫setpageheight。我必要时给这个高度。

http://jsfiddle.net/Ge7nM/

相关问题