我不确定要在可能非常大(超过5,000行)的表上执行某些分页的最佳方法。
我的第一个问题是,每页显示的行数应仅由布局决定,还是也应考虑页数。例如,我应该说<1000显示20行,> = 1000显示30行吗?
下一个问题是,假设用户已尽可能多地过滤了表格并留有50页的信息,那么如何最好地在这些页面之间导航?他们是否应该获得一个输入框以跳至第45页?还是应该用skip(1)skip(5)按钮足够?目前,我不知道最终用户将如何使用这些表,因此我不确定让他们先尝试哪种选项。
最后,是否有人可以分享正确的分页实例?我一直在寻找好的参考资料!
分页是否正确,但这是我在Web应用程序中进行分页的方法:
|< First, << Previous, Page [5] of 12, Next >>, Last >|
外部的四个选项是链接,而Page [5] of 12
是一种形式,以[5]作为输入字段。对于启用了JavaScript的用户,我将隐藏“提交”按钮,并在取消焦点事件时提交表单,或输入按键。用户可以选择要显示的行数,可以从下拉菜单中选择:10、20、50、100,全部。除了分页之外,我还提供结果的排序和过滤功能,尽管可能并非在每种情况下都有意义。
编辑:
这是我们的Web应用程序模型的摘录,旨在为您提供更好的主意。在此版本中,按钮中省略了这些词,但是在稍有延迟之后,它们作为悬停工具提示出现。但是,您可能会发现,保留单词会带来更高的可用性。
需要指出的其他几点:
很抱歉获得这样的答案,但是取决于。您拥有什么类型的内容以及用户正在寻找什么?用户的目标是什么?是网站还是应用程序?
在许多情况下,您可以使用无限滚动来避免分页(例如,参见 Google图片搜索 的搜索结果)。
分页的问题是页面本身没有意义。为什么要转到第45页?为什么不38?如果对内容进行了排序,则可以尝试给页面指定有意义的名称(例如字母,日期范围或其他有意义的名称)。每页的行数应尽可能大,因为滚动通常提供比在页面之间导航更好的体验(但是这不是一般规则,并且有一些例外)。
对于示例和良好实践,这是 很棒的文章 。
通常,每页的项目数是您根据以下条件确定的:
如果您回答上述问题,他们将很好地引导您回答第二个问题。分页是您拥有的数据和要显示的项目数的乘积。我的建议是确定用户是否要指定他们要查看的页面。您可以通过进行用户测试以及考虑列出哪种信息来解决这一问题。例如,搜索结果很少具体到足以说出“我想转到第47页”,因为它们通常是按不透明的,不透明的算法排序的。但是,如果要按字母顺序列出姓名,则转到第47页可能非常直观。
同样,您要显示的数据类型也会影响导航,您可能需要考虑多面导航设计模式以简化操作。在我刚刚给出的字母名称示例中,如果您有大量数据,则可以考虑使用字母(A | B | C | D等)和每个字母中的页面进行分页。
具体来说:
分页正确的示例:
用户更喜欢滚动而不是分页。与瞄准小型导航链接相比,操作滚轮要容易得多。