陌生网页交互行为分析(1)——奇怪的关闭按钮
作者:无酬 来源:Taobao.com UED 发布时间:2009-01-08 12:22:00
我们在浏览网页的时候偶尔会遇到一些陌生的网页交互行为,通常情况下它们并不会影响你的正常使用,之所以出现情况往往是因为,设计师在设计某个交互方式的时候,遇到了常用的交互模式无法解决的问题,因此会采用一种创新的交互模式来解决问题。通常情况下这些创新的交互方式将会是我们学习的绝佳案例。对设计师拓宽思路很有好处,今天我们介绍的是一个来自google的sns社区orkut 的对关闭按钮的创新应用。
应用场景:orkut组件是默认展示在profile页面的,可以通过执行两种操作隐藏和移除来关闭该组件在profile里的显示状态,区别是隐藏后该组件还可以在组建库中找回,移除后组件无法找回只能重新添加。
通常我们会采取的方案:
如图,通常遇到这种情况我们会设计两个按钮一个隐藏一个移除。好处:两个任务直接展现,操作也很直接。只需一次点击即可。弊端:用户不理解隐藏和移除代表什么意思,无法预知操作结果,两个动作的操作结果在此页面的表现是一样的,而且操作在当前页面不可逆。
挑战:怎样以一种清晰的方式告诉用户隐藏和移除的区别,两个动作行为结果是一样的,即此组件从当前页面消失,区别是隐藏的组件还可以在组件列表被找到而移除的组件则不能。
解决思路:对动作进行相对详细的文字解释是表现这种区别的最直接的方法,但页面空间非常有限,因此不可能在页面中直接添加动作解释。这时候选择弹出窗成了一个很自然的选择(就是在点关闭按钮后弹出窗口,在弹出窗中我们可以对隐藏和移除两个行为做出更清晰的解释,用户就可一作出更明确的选择)。最终,设计师选择的是,类似于下拉菜单的,小面积的浮出层。
最终方案:把两种操作整合为一个关闭按钮(关闭按钮恰好可以概括两个操作在当前页面的相同结果,是这两个操作的交集,因此语义上非常恰当),在点关闭后用户会看到两个有详细注释的按钮,“hide from my profile(在当前页面隐藏)”和“remove this application(移除此组件)”这时候用户就可以作出相对准确的选择了。
设计师之所以没有选择弹出窗的形式,是因为这样做会增加用户的认知负担,并且从可逆性角度考虑即使用户勿删了组件仍然可以用添加组件的方式找回,所以线上的这种方式是最佳的选择。
猜你喜欢
- 最近和一程序员合作项目。弄的我头都大了~埋怨我的CSS命名看不懂~得按照他的来。结果我打开他的页面,看了看,从头第一个开始就是content
- 设计与开发之间本有一线界限,但当时代步入又一个十年,这个线变得更加模糊甚至感觉不到它的存在。使用PS设计网页版面,足矣?或许五年前是吧!现在
- 我们知道,在js中,当object作为参数传递到函数中进行处理后,实际上是修改了传入的对象本身(或者说是对象的引用),但很多时候我们并不希望
- Access 连接字符串 strConnect = “Provider=Microsoft.Jet.OLEDB.4.0;
- 第一种方法: 代码如下:/* 创建链接服务器 */ exec sp_addlinkedserver 'srv_lnk
- 在access中进行时间的比较sql语句很简单,如select * from table where thetime>#\"
- 内连接(inner join)。 外连接: 全连接(full join)、左连接(left join)、右连接(right join)。 交
- 著名的老掉牙的IE6.0在我这里已经有六年工龄了,前几天朋友拿到个IE8.0新的Beta版本,我的Sever2003装不上,大为扫兴。Chr
- 一个ASPJPEG组件综合操作的asp类CLASS相关文章:ASP怎么谈到应用到类的?ASP中类的详细介绍(class Property G
- 组件:"Adodb.Stream" 有下列方法: Canc
- 就目前互联网上大小网站而言,大部分都是采用ASP+ACCESS/SQL Server或者PHP+MySQL来编写;事实上,ASP和MySQL
- MSDN:包含正在 SQL Server 实例上运行的进程的相关信息。这些进程可以是客户端进程或系统进程。 视图中主要的字段: 1. Spi
- 1、设置web.config文件。以下为引用的内容:<system.web> ...... <globalization
- 依次前移,实现聊友们的发言的更迭:function form1_onsubmit()if document.form1.
- 在异步应用程序中发送和接收信息时,可以选择以纯文本和 XML 作为数据格式。掌握 Ajax 的这一期讨论另一种有用的数据格式 JavaScr
- 知识补充表单简介(来自Mr._Dang)action:提交的地址method:提交的方式 get: 参数是在url中的,不安全,传输量比较少
- 关于在asp中不使用组件使得脚本sleep的办法还比较少见,可能比较好的办法是创建同步的xmlhttp request,直到获得的时间达到某
- 代码如下: 代码如下:///<summary> /// 将两个列不同的DataTable合并成一个新的DataTab
- JavaScript中的XMLHttpRequest和XML DOM首先,我们需要建立一些规则。特殊的XMLHttpRequest对象和一般
- MySQL中有许多操作符和函数可以返回字符串。本节回答这个问题:返回的字符串使用什么字符集和 校对规则?对于简单的函数,即接收字符串输入然后