我的应用为不同类型的活动实现了一个活动流。其中一种活动类型与用户可以积累的不同虚拟货币有关。例如,用户可以通过发表评论、对某个主题进行投票等来积累"积分"。如果我不进行过滤或聚合,您将在仅仅一个小时的时间内收到大量自生成的垃圾邮件,例如:
- 评论获得5分(总分= 505)
- 获得10分投票(总分= 515)
- 评论获得5分(总分= 520)
- 评论获得5分(总分= 525)
- 评论获得5分(总分530分)
- 获得投票10分(总分540分)
- 获得投票10分(总分550分)
- 获得投票10分(总分560分)
- …
- …
- …
你将如何防止这种潜在的自我生成垃圾邮件,同时以一种邀请你的朋友看到你一直在做什么的方式呈现活动流?
我可以想到几个选项。第一个是数据的聚合。我不知道你有多少种活动类型,但你可以将你发布的内容提炼为2项:
-
<Name>
发表<x>
评论,获得<x * 5>
分! -
<Name>
对<x>
的事情投票。
您可以使这些列表项中的每一个都可单击以展开并显示详细信息。因此,在点击评论摘要之后,用户将看到如下内容:
-
<Name>
发表<x>
评论,<x * 5>
分!- 评论获得5分(总分= 505)
- 评论获得5分(总分= 520)
- 评论获得5分(总分= 525)
- 评论获得5分(总分530分)
-
<Name>
对<x>
的事情进行了投票。
你可以使用jQuery UI accordion来实现这个
Facebook采用的方法是,它使用一个示例帖子,然后让用户知道有更多的项目可用,像这样:
- 评论获得5分(总分= 505)
- 制作
<x>
more comments
当用户点击"make <x>
more comments"时,用户可以看到每条评论(在一定的时间范围内)
假设您想一眼看到用户最近是否活跃以及最近的时间,我建议如下:
我不知道你想在哪里显示这个,但也许在个人资料页面,或在"朋友"列表。我将显示一个聚合,它将显示用户最近活跃的时间框架,以及她做了什么:
。
- 刚刚评论了
- 在最后一小时内进行了评论和投票
- 今天已经发表了评论和投票
- 本周已发表评论和投票
你只会显示最近的那些。因此,如果用户刚刚评论过(在最近五分钟内),那么显示第一行。如果她在过去一小时内有活动,显示第二行。等等......这清楚地显示了用户的活跃状态和活跃时间。我认为这是最重要的。
你可以结合显示总分,显示用户的总体活跃程度。
可能是这样的:
<name>[<total_score>] has just commented on <x>
或
<name>[<total_score>] has made <x> comments and <y> votes in the last hour.
Mmmmmm我希望消息更短:
<name>[<total_score>] has earned <x> points in the last hour.
清楚了吗?不确定。
此消息将被点击,并将您链接到一个弹出式图表/图形,显示活动(投票/评论/分数)在过去的一周/一个月。一个图表,因为它很紧凑,很容易理解。
你觉得怎么样?
我个人会选择Stack Uses这样的警报,用于即时通知即时活动。它们迅速警觉,然后闪开。如果你把它们设置成可点击的,如果用户愿意,他们可以向下钻取详细信息。
然后,在某个地方,比如帐户部分,我会使用jQuery数据表列出所有活动,这样它们就可以被排序、分页、过滤,并通过流水线Ajax交付。简单,高效,用户友好!
UI是关于共性的,通过呈现熟悉的交互,让用户在一个他们从未体验过的环境中感到舒适。你会在StackOverflow, Swagbucks, MyPoints等网站上看到同样的模式