页面优化Check List(四)-输入(表单、注册)#产品经理
本文为转载整理的学习笔记,编号有所改动。关于表单、注册类的输入优化将会陆续整理更新到这一篇。
文章来自@谢尔鱼翻译并授权人人都是产品经理社区发布
原文地址:http://goodui.org/
1.尝试精简表单
人类天生就抗拒密集型劳动,并且这也体现在表单填写上。你要求用户填写的每一个字段都有让用户转身放弃的风险。每个人打字的速度都是不一样的,况且在移动设备端输入更是一件苦差事。确定是否每一个字段都是必需的,尽量删掉不必要的字段。如果你确实有大量的信息需要用户填写,考虑将它们分开到不同的页面填写,或者在提交之后还能继续补充。过多的字段会让你的表单臃肿,要想精简也很容易,减少字段就行了。
2.尝试暴露选项而不是隐藏它们
你使用的每一个下拉菜单隐藏的信息,都需要用户用额外的操作才能显示。假如那些隐藏选项对用户来说是贯穿整个操作的,你可能会希望它们展示得更明显一些。保留那些约定俗成的下拉菜单,比如说日期和时间(例如:日历)或者地理位置的选择。有时候下拉菜单在用户重复使用的地方也是可以使用的(例如:操作菜单)。在你需要进行页面跳转的地方,尽量避免为主要功能使用下拉菜单。
3.尝试循序渐进的引导而不是草率地让用户注册
与其要求用户立马注册,何不让用户先体验一些已示范的有价值的操作呢?在最初的交互过程中,不仅能展现产品的价值,也能显示出产品的个性。一旦用户开始看到你的产品的价值,了解产品对自己的用处,他们将更乐于与你分享更多的信息。这种循序渐进的引导是一种尽可能推迟注册过程的方法,同时还可以让用户使用和自定义你的应用或产品。
4.尝试使用智能的默认值,而不是要求额外的操作
使用智能默认值,或者根据经验猜测预填表单字段能够帮助用户减少大量的工作量。这是一种节省用户的宝贵时间,帮助用户快速完成表单填写的常用技巧。最糟糕的事情是从经验和转化点出发要求用户填写的信息可能是他们在过去已经反复多次提供过的。尝试加载和显示已经验证过的字段值,而不是每次都要求用户填写。用户的工作量越少越好。
5.尝试进行内联验证,而不是提交后再报错
当处理表单时,通常在验证到字段填写不正确时就立马给出错误提示,比填完提交之后再报错要好得多。这里强调的交互模式当然就是最著名的内联验证了。当验证到错误的时候,将其立马显示出来(在输入框右边显示出来),这样上下文中出现错误时就可以立即被更正。另一方面,如果在表单提交之后再提示错误,就会强迫用户回忆之前的操作步骤而做额外的工作。
6.尝试放宽输入的条件,而不是要求严格的数据格式
适当放宽对输入数据的要求会使计算机看起来更人性化一点。放宽对输入数据的要求,包括数据的内容、格式,会让你的用户界面更加友好。最好的例子就是当我们要求用户输入电话号码的时候,用户输入的方式有很多种——带括号的,不带括号的,带破折号的,带区号的等等。对你来说,就是稍微多写几行代码,但你的用户会因此省很多事。
7.尝试显式地罗列选项,而不是让用户自己边回忆边填写
这是一条与心理学紧密相关的经典原则,即人们很容易在一些已有的事物中进行辨识,而纯粹从记忆中回忆则相对困难。辨识给我们提供的线索或提示,让我们只需要稍微回忆一下就能完成。而回忆则要求人们完全靠自己从记忆深处进行搜索。这可能就是为什么在考试中有时多项选择题比开放题能更快地完成。所以给用户提供一些之前涉及到的信息作为选项,而不是让他们完全靠自己回忆。
8.尝试渐进式地收集信息,而不是无条理的获取信息
渐进式显示能使用户免收不相关信息的干扰。这种模式渐进式地展示信息,即在上下文中有必要显示该信息的时候,它才显示。通常渐进式显示会伴随着某种形式的内联扩展或者滑出动画。如果太多字段需要用户填写,可能会将用户吓跑,所以这也是另一种避免不必要的输入字段的策略。只在必要的情况下才显示/请求这些字段。
9.尝试为控件添加多功能
简洁性因其与易用性息息相关而在设计中举足轻重。太多的杂物会消耗我们有限的注意力,并且模块越多,可用性空间不足的问题就会越明显。在用户界面上用简洁的元素也可以实现相同的功能,方法之一就是让UI控件具备多功能。也就是说,在一个控件上添加两个或多个功能。举个例子,我们可以在一个搜索输入字段上绑定一系列的过滤机制,以此来移除额外的过滤器。我们也可以通过鼠标悬停展示来进一步减少额外的部分。不过多功能机制并不是万能的。简洁的代价是隐蔽性。不太明显的功能有被忽略的风险。因此,对常客来说,保留多功能方法还是很好的。所以,合理使用多功能,但不要滥用。
10.尝试在界面上做有用的运算,而不是让用户自己计算
用户界面可以为用户做一些数学运算,从而消除不必要的摩擦。举例来说,让我们假设有一些应用的积分快用完了而不能再继续使用。这时为用户计算出还有多少天应用就到期或许是更有意义的。一个更简单和应用广泛的例子是“3分钟前”相对于“9月2日,下午4:37”对用户来说更易于理解。在界面上为用户做好运算,使用户免于计算的苦恼。