UI中的响应时间:3个重要的界限

2024-02-17 22:08
文章标签 ui 时间 响应 重要 界限

本文主要是介绍UI中的响应时间:3个重要的界限,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

有关操作响应时间的基本准则,三十多年来就没有变过,而且这些准则不限于某一门技术或语言。

  • 0.1秒是用户瞬间感受的界限,这意味着不需要任何提示(feedback)可直接显示结果。
  • 1秒:即使用户感觉到了延迟,但仍然感觉流畅并保持连续的操作,一般来讲,延迟在0.1秒~1秒之间,是不需要特殊提示的, 但用户仍然会失去直响应的感觉。
  • 10秒是用户专注于单一任务的极限,对于更长的延迟,用户将会进行其它的操作,而不会等待计算机执行完毕。所以,在计算机执行的过程中应当给用户提示。由于时间对于用户来讲是十宝贵,所以提示现在尤为重要,不然的话用户讲不知道做什么。

其它

  • 计算机的响应时间一般来说,越快越好,但底线是保证可用性,不应当过快以至于用户无法操作。例如,滚动列表的滚动速度太快到让用户无法及时停止目标内容。
  • 当一个操作需要超过10秒的等待,应该给予用户一个百分比进度条,这种效果将远远好于仅提示用户剩余时间,并且给予一个可中断或取消的操作。
  • 对于无法计算进度的操作,也应当给予用户适当的反馈。例如:扫描未知大小的数据库时,可以打印出已扫描的表。另外替代方案是提供一个简单的等待动画,提示用户程序在运行中。
  • 对于2~10秒的操作,如果使用百分比进度条显得有些大材小用,并且过快的显示也会让用户有种闪烁的不好效果。这时可以仅使用一个“忙碌”的动画,并且在合适的位置配上一个变化的数字提示进度,效果更好。

结合实际

1、在网页中有许多的选项卡或相册轮翻,这些大都是使用mouseover事件触发。这就难免出现一个问题,鼠标无意之中划过触发区域,会进行切换,给人以闪烁的感觉。

具体的解决方法:既然100毫秒内的延迟,用户都不会有所察觉,那就增加触发延迟,代码如下(使用jQuery编码方式做演示)。

2、在Suggest的应用当中,如果每次键盘事件都会触发一次请求的,那么这其中将会有许多无效请求,并对服务器造成一定压力。因此多数Suggest中都会使用如上一例子中的延迟,时间一般控制在200~250毫秒内。

 

附上英文原文:

http://www.useit.com/papers/responsetime.html

这篇关于UI中的响应时间:3个重要的界限的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/719127

相关文章

Java获取当前时间String类型和Date类型方式

《Java获取当前时间String类型和Date类型方式》:本文主要介绍Java获取当前时间String类型和Date类型方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录Java获取当前时间String和Date类型String类型和Date类型输出结果总结Java获取

Python实现批量提取BLF文件时间戳

《Python实现批量提取BLF文件时间戳》BLF(BinaryLoggingFormat)作为Vector公司推出的CAN总线数据记录格式,被广泛用于存储车辆通信数据,本文将使用Python轻松提取... 目录一、为什么需要批量处理 BLF 文件二、核心代码解析:从文件遍历到数据导出1. 环境准备与依赖库

Olingo分析和实践之ODataImpl详细分析(重要方法详解)

《Olingo分析和实践之ODataImpl详细分析(重要方法详解)》ODataImpl.java是ApacheOlingoOData框架的核心工厂类,负责创建序列化器、反序列化器和处理器等组件,... 目录概述主要职责类结构与继承关系核心功能分析1. 序列化器管理2. 反序列化器管理3. 处理器管理重要方

WinForm跨线程访问UI及UI卡死的解决方案

《WinForm跨线程访问UI及UI卡死的解决方案》在WinForm开发过程中,跨线程访问UI控件和界面卡死是常见的技术难题,由于Windows窗体应用程序的UI控件默认只能在主线程(UI线程)上操作... 目录前言正文案例1:直接线程操作(无UI访问)案例2:BeginInvoke访问UI(错误用法)案例

go中的时间处理过程

《go中的时间处理过程》:本文主要介绍go中的时间处理过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1 获取当前时间2 获取当前时间戳3 获取当前时间的字符串格式4 相互转化4.1 时间戳转时间字符串 (int64 > string)4.2 时间字符串转时间

Golang如何对cron进行二次封装实现指定时间执行定时任务

《Golang如何对cron进行二次封装实现指定时间执行定时任务》:本文主要介绍Golang如何对cron进行二次封装实现指定时间执行定时任务问题,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录背景cron库下载代码示例【1】结构体定义【2】定时任务开启【3】使用示例【4】控制台输出总结背景

C++ 函数 strftime 和时间格式示例详解

《C++函数strftime和时间格式示例详解》strftime是C/C++标准库中用于格式化日期和时间的函数,定义在ctime头文件中,它将tm结构体中的时间信息转换为指定格式的字符串,是处理... 目录C++ 函数 strftipythonme 详解一、函数原型二、功能描述三、格式字符串说明四、返回值五

从基础到进阶详解Pandas时间数据处理指南

《从基础到进阶详解Pandas时间数据处理指南》Pandas构建了完整的时间数据处理生态,核心由四个基础类构成,Timestamp,DatetimeIndex,Period和Timedelta,下面我... 目录1. 时间数据类型与基础操作1.1 核心时间对象体系1.2 时间数据生成技巧2. 时间索引与数据

VS配置好Qt环境之后但无法打开ui界面的问题解决

《VS配置好Qt环境之后但无法打开ui界面的问题解决》本文主要介绍了VS配置好Qt环境之后但无法打开ui界面的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 目UKeLvb录找到Qt安装目录中designer.UKeLvBexe的路径找到vs中的解决方案资源

利用Python实现时间序列动量策略

《利用Python实现时间序列动量策略》时间序列动量策略作为量化交易领域中最为持久且被深入研究的策略类型之一,其核心理念相对简明:对于显示上升趋势的资产建立多头头寸,对于呈现下降趋势的资产建立空头头寸... 目录引言传统策略面临的风险管理挑战波动率调整机制:实现风险标准化策略实施的技术细节波动率调整的战略价