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

相关文章

element-ui下拉输入框+resetFields无法回显的问题解决

《element-ui下拉输入框+resetFields无法回显的问题解决》本文主要介绍了在使用ElementUI的下拉输入框时,点击重置按钮后输入框无法回显数据的问题,具有一定的参考价值,感兴趣的... 目录描述原因问题重现解决方案方法一方法二总结描述第一次进入页面,不做任何操作,点击重置按钮,再进行下

如何用Java结合经纬度位置计算目标点的日出日落时间详解

《如何用Java结合经纬度位置计算目标点的日出日落时间详解》这篇文章主详细讲解了如何基于目标点的经纬度计算日出日落时间,提供了在线API和Java库两种计算方法,并通过实际案例展示了其应用,需要的朋友... 目录前言一、应用示例1、天安门升旗时间2、湖南省日出日落信息二、Java日出日落计算1、在线API2

如何评价Ubuntu 24.04 LTS? Ubuntu 24.04 LTS新功能亮点和重要变化

《如何评价Ubuntu24.04LTS?Ubuntu24.04LTS新功能亮点和重要变化》Ubuntu24.04LTS即将发布,带来一系列提升用户体验的显著功能,本文深入探讨了该版本的亮... Ubuntu 24.04 LTS,代号 Noble NumBAT,正式发布下载!如果你在使用 Ubuntu 23.

如何使用 Bash 脚本中的time命令来统计命令执行时间(中英双语)

《如何使用Bash脚本中的time命令来统计命令执行时间(中英双语)》本文介绍了如何在Bash脚本中使用`time`命令来测量命令执行时间,包括`real`、`user`和`sys`三个时间指标,... 使用 Bash 脚本中的 time 命令来统计命令执行时间在日常的开发和运维过程中,性能监控和优化是不

python中的与时间相关的模块应用场景分析

《python中的与时间相关的模块应用场景分析》本文介绍了Python中与时间相关的几个重要模块:`time`、`datetime`、`calendar`、`timeit`、`pytz`和`dateu... 目录1. time 模块2. datetime 模块3. calendar 模块4. timeit

Java将时间戳转换为Date对象的方法小结

《Java将时间戳转换为Date对象的方法小结》在Java编程中,处理日期和时间是一个常见需求,特别是在处理网络通信或者数据库操作时,本文主要为大家整理了Java中将时间戳转换为Date对象的方法... 目录1. 理解时间戳2. Date 类的构造函数3. 转换示例4. 处理可能的异常5. 考虑时区问题6.

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

服务器集群同步时间手记

1.时间服务器配置(必须root用户) (1)检查ntp是否安装 [root@node1 桌面]# rpm -qa|grep ntpntp-4.2.6p5-10.el6.centos.x86_64fontpackages-filesystem-1.41-1.1.el6.noarchntpdate-4.2.6p5-10.el6.centos.x86_64 (2)修改ntp配置文件 [r

深入理解RxJava:响应式编程的现代方式

在当今的软件开发世界中,异步编程和事件驱动的架构变得越来越重要。RxJava,作为响应式编程(Reactive Programming)的一个流行库,为Java和Android开发者提供了一种强大的方式来处理异步任务和事件流。本文将深入探讨RxJava的核心概念、优势以及如何在实际项目中应用它。 文章目录 💯 什么是RxJava?💯 响应式编程的优势💯 RxJava的核心概念

MiniGPT-3D, 首个高效的3D点云大语言模型,仅需一张RTX3090显卡,训练一天时间,已开源

项目主页:https://tangyuan96.github.io/minigpt_3d_project_page/ 代码:https://github.com/TangYuan96/MiniGPT-3D 论文:https://arxiv.org/pdf/2405.01413 MiniGPT-3D在多个任务上取得了SoTA,被ACM MM2024接收,只拥有47.8M的可训练参数,在一张RTX