瞬间的设计 I
作者:咏沙 来源:Taobao.com UED Team 发布时间:2009-12-25 18:54:00
瞬间设计是什么?
良好的用户体验,全在于那些完美的瞬间。在第一个瞬间,假设当一位用户从购物搜索结果页面跳转到某个店铺的时候,他此刻可能是想看看这个店铺的风格及其信用;而下一个瞬间可能就开始琢磨如何使用页面中的导航来观看某个宝贝介绍。再然后则可能是询问怎验购买,从哪里注册,者看看商品是否打折,或者尝试联系这个卖家。
若想完成优秀的设计,我们就需要时刻自问:在希望用户做些什么,界面应该如何鼓励他们完成这些任务?每一个瞬间对于完整的用户体验来说,都是不可或缺的一部分,因为他们都有可能加强也可能摧毁用户对某个产品或公司的信心。为什么这么说呢?因为每个人在每时每刻所要完成的任务,对于此时此刻的他而言,那就是重要的任务。
设计师要做什么?
我们的工作不是设计花哨的页面,而是要设计美好的瞬间,确保每时每刻都完美,是设计师的职责和价值所在。在用户进行选择的瞬间,我们要帮助他们做出正确的决定,我们要留意创建怎样的交互行为以及鼓励人们输入,编辑,搜索和共享,激励他们完成所有的他们希望做的事情,我们还应该设计各种手段帮助人们提高工作效率——即使他们天生忘性大,老出错,或者总是三心二意。可以说设计师的工作就是考虑所有这些瞬间——设计一些东西来支持用户达成每一个目标,而不会干扰或者妨碍到他们,同时,把这些完全不同的部分凝成为一个整体。只有这样他们才能相信我们产品,喜欢我们的服务。
从一个例子开始
如何设计美好的瞬间?在开始之前,请大家先回想一下igoogle界面,这个产品大家一定很熟悉,有的设计师几乎每天都用到它。igoogle有很多关于拖拽的操作,而拖拽这个复杂的交互行为需要不同的状态(我们称之为瞬间)来表现其交互事件(Event),yahoo模式库曾对其进行详细的划分,他们分别是:
页面加载(Page Load)
鼠标悬停在拖动目标上(Mouse Hover Over Drag Object)
鼠标按下拖动目标区域(Mouse Down On Drag Region of Drag Object)
拖动发起(Drag Initiate)
拖动原位置(Drag Over Original Location)
拖动离开原位置(Drag Leaves Original Location)
拖动重新进入原位置(Drag Re-enters Original Location)
拖动有效区域(Drag Over Valid Target)
拖动进入有效的区域(Drag Enters Valid Target)
拖动悬停于有效的区域(Drag Hovers Over Valid Target)
拖动推出有效的区域(Drag Exits Valid Target)
拖动非操作区域(Drag Over Invalid Target)
拖动进入无效的区域(Drag Enters Invalid Target)
拖动悬停于无效的区域(Drag Hovers Over Invalid Target)
拖动退出无效区域(Drag Exits Invalid Target)
拖动非具体目标(Drag Over No Specific Target)
接受放置(Drop Accepted)
接受放置起始(Drop Accepted Begins)
接受放置结束(Drop Accepted Ends)
拒绝放置(Drop Rejected)
放置于原位置(Drop On Original Location)


猜你喜欢
- 前言最近在做项目高可用时,需要使用数据同步。由于只有双节点,且采用主主同步可能存在循环同步的风险,故综合考虑采用Mysql主从同步(Mast
- 在当前目录下:方法1:file = open(‘filename') a =file.read() b =a.split(‘\n
- 1. 一个指令定义对象可以提供如下几个钩子函数(均为可选)bind:只调用一次,指令第一次绑定到元素时调用。在这里可以进行一次性的初始化设置
- 1.Order By原理MySQL的Order By操作用于排序,并且会有多种不同的排序算法,他们的性能都是不一样的。假设有一个表,建表的s
- 原来是在系统上出了问题.是2003的IIS出现了问题,因为是2003的系统,它对ASP的上传文件做出了200K的限制,解决问题方法如下 :
- 背景pytorch作为深度学习的计算框架正得到越来越多的应用.我们除了在模型训练阶段应用外,最近也把pytorch应用在了部署上.在部署时,
- 很久没有写文章,最近一直在忙于找工作和找房子。哎,现在终于安定下来了,哎,又叹息一下,是因为我把去淘宝面试的机会也推掉了,本来以为要卷铺盖回
- 学习使用存储过程(Stored Procedure),是ASP程序员的必须课之一。所有的大型数据库都支持存储过程,比如Oracle
- 1、相关说明此脚本可以将Mysql的数据导出成Json格式,导出的内容可以进行select查询确定。数据传入参数有:dbConfigName
- 起步上一篇 《Python 的枚举类型》 文末说有机会的话可以看看它的源码。那就来读一读,看看枚举的几个重要的特性是如何实现的。要想阅读这部
- 购物车程序要求如下图代码# --*--coding:utf-8--*--# Author: 村雨import pprintproductLi
- Dapper的简介Dapper是.NET下一个micro的ORM,它和Entity Framework或Nhibnate不同,属于轻量级的,
- Idea 2020 发布之后,官方终于支持了中文语言包但是,我下载后在插件市场无法找到官方的汉化包那要怎么解决这个问题呢?首先,查看你当前I
- 代码如下:create proc p_sword_getblcolumn ( @tblN
- 本文实例讲述了JavaScript实现同步于本地时间的动态时间显示方法。分享给大家供大家参考。具体分析如下:动态显示时间的例子非常简单,了解
- 一、yield关键字实现方式以yield关键字方式实现协程代码如下所示:def fun1(): yield 1 &
- 一.问题描述 这是在工作中遇到的一段代码,原理大概和下面类似(判断某一个元素是否符合要求,不符合删除该元素,最后得到符合要求的列表
- 本文实例讲述了C#创建数据库及导入sql脚本的方法。分享给大家供大家参考,具体如下:C#创建数据库:/// <summary>/
- 环境配置系统:Windows10版本:python 3.8Turtle扫盲1.绘图窗体的设置turtle.setup(width, heig
- 问题最近在做项目的时候, dialog组件回调close里面 一般我都会加个resetFields 重置初始值和校验其他地方都没问题, 在t