2009-07-03 58 views
1

我正在研究这个有点像博客的应用程序。我正在考虑做一些事情,用户可以使用谷歌阅读器这样的“无限滚动”功能滚动浏览所有帖子。“无尽滚动”是否可以编辑的东西工作?

这就是我所期待的问题......如果用户点击某个帖子进行编辑,那么他/她将会进入一个新页面。很快,他们会想要回到滚动视图,他们可能会想要返回到他们点击“编辑”时所处的位置。

我想如果他们没有看到他们点击“编辑”时发现的同一个帖子集合,他们会被吓倒。他们不想回到逐渐加载滚动过程的开始,而必须重新开始。

我曾想过在会话中存储累积帖子的ID和滚动位置,并在用户返回时重建所有内容。但是如果他们在点击“编辑”之前滚动了数十或数百个帖子呢?在合理的时间内加载数据可能太多。

然后有一个想法,使用对话框,而不是去一个新的页面进行编辑,但它引入了一整套其他问题。例如,如果用户试图在新选项卡中打开对话框,会发生什么情况?

所以也许这对于“无尽的滚动”来说不是一个好的设置。也许传统的分页方式是可行的。

有没有人执行过这样的事情?有什么想法吗?

回答

1

当心:我觉得 '无尽滚动' 烦人。它将作为位置指标的滚动拇指弄乱了,并且出现了惊人的变化和停顿。在某种程度上,它会变得很笨重 - 你提到的“数百个帖子”场景 - 除非更复杂(当你深入的时候丢弃顶部的项目,提供随机访问)。

但是,请考虑Google Reader(您引用的示例)如何处理该问题:您很少从无尽滚动窗口导航。一些项目操作(标记)发生内联,但大多数链接在另一个窗口中打开以完全避开问题。如果你想改变设置,那么'回到谷歌阅读器'你的滚动位置会回到顶部 - 所以也许这不是什么大问题。 (虽然值得注意的是:当你回来时,列表的范围是所有以前加载的项目 - 原来刚顶装更多关于这下面。)

我会考虑在非模态位置编辑 - 编辑框插入滚动区域,在正在编辑的项目的顶部或旁边。或者,如果一个关键位的连续性是你想要发回人们准确地查看他们刚刚编辑的项目,请确保'返回列表'链接包含一个指向视图应该自动执行的地方的指针,滚动(例如,在#fragment锚点中)。此外,如果您的代码或浏览器有效地缓存了数百个前面的项目(正如我上面提到的Google Reader看起来那样),则前滚应该是即时的,无需重新加载。

0

我已经做了一些动态数据类似这样的事情。我输出一个定位标签,它是帖子的ID并通过POST或GET传递它,或者根据用户点击的内容将它传递给帖子,以便当他们再次导航到页面时,我的代码将放入锚点。

类似:

header("location:http://www.myDomain.com/posts.php" . "#" . $post_id); 
1

无尽的滚动用户界面已知有一个学习曲线 - 取决于你的用户基础,他们可能是一个相当陌生的领土和混淆不止帮助。这可能会在未来几年或几个月内发生变化,所以这一切都取决于...

一如既往,如果有疑问,请从您的用户自己了解。理想情况下,您应该运行一个观察性研究,您可以使用类似的无限滚动用户界面来观看它们。他们完全失去了吸引力吗?或者他们是否快速“明白”并将其视为比传统分页更快的解决方案?请记住,像我们这样的人(使用twitter和谷歌阅读器)在我们的前面,我们的需求,目标和期望可能会与您的目标用户群不同。

所以,简而言之,您应该首先了解无尽滚动UI是否合适。这完全有可能不是 - 因此巧妙地回避了上述问题。

1

无尽/长卷轴是糟糕的可用性实践。即使您在编辑后设法将用户重定向到正确的帖子,他们可能已经忘记了他们在编辑过程中的位置。然后,他们将进行分页确认他们在哪个页面上。

也许只是保持简单,并限制每页文章&提供分页功能。这是用户熟悉的UI功能,不会迷路。

或者只是提供每个帖子的标题,这可以通过点击展开/收缩以分别查看和隐藏完整帖子。这将允许每页更多的帖子,而没有过多的滚动。

相关问题