Skip to content

交互说明文档

文档编号: SYS-UX-IX-003
版本: 1.0
日期: 2026-03-09
编制: UI/UX设计师
审核: 产品经理
批准: 项目总监
状态: ✓ 已批准


一、文档概述

1.1 文档目的

本文档详细定义系统的交互规范,包括交互手势、操作反馈、状态变化、动画效果等,确保交互体验的一致性和可用性。

1.2 参考文档


二、交互设计原则

2.1 核心原则

原则描述设计体现
即时反馈用户操作后立即给予反馈按钮点击效果、加载状态
操作可逆重要操作支持撤销删除确认、操作撤销
防错设计预防错误发生输入验证、操作确认
一致性相同操作相同反馈统一的交互模式
效率优先减少操作步骤快捷操作、批量处理

2.2 交互层级

层级交互类型示例
L1即时反馈按钮悬停、点击效果
L2状态反馈加载中、成功/失败提示
L3页面反馈页面切换、弹窗
L4系统反馈通知、邮件提醒

三、通用交互规范

3.1 按钮交互

3.1.1 按钮状态

状态视觉效果交互说明
默认正常颜色可点击
悬停颜色加深/变浅鼠标移入,提示可点击
点击颜色变化+轻微缩放鼠标按下,即时反馈
加载显示加载图标操作处理中,禁用点击
禁用灰色,无悬停效果不可点击

3.1.2 按钮类型

主要按钮:   [  确认创建  ]  ← 蓝色背景,白色文字,用于主要操作
次要按钮:   [  取消  ]      ← 白色背景,灰色边框,用于次要操作
危险按钮:   [  删除  ]      ← 红色背景,用于删除等危险操作
链接按钮:   查看详情        ← 文字形式,用于跳转
图标按钮:   [⚙️]           ← 图标形式,用于设置等操作

3.1.3 按钮交互细节

css
/* 按钮交互规范 */
.button {
  /* 默认状态 */
  background: #1890ff;
  color: white;
  border: none;
  border-radius: 4px;
  padding: 8px 16px;
  cursor: pointer;
  transition: all 0.3s ease;
  
  /* 悬停状态 */
  &:hover {
    background: #40a9ff;
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(24, 144, 255, 0.3);
  }
  
  /* 点击状态 */
  &:active {
    background: #096dd9;
    transform: translateY(0);
    box-shadow: none;
  }
  
  /* 禁用状态 */
  &:disabled {
    background: #f5f5f5;
    color: #bfbfbf;
    cursor: not-allowed;
    transform: none;
    box-shadow: none;
  }
  
  /* 加载状态 */
  &.loading {
    opacity: 0.7;
    cursor: wait;
  }
}

3.2 表单交互

3.2.1 输入框交互

状态视觉效果说明
默认灰色边框等待输入
聚焦蓝色边框+阴影当前输入框
填写绿色边框验证通过
错误红色边框+错误提示验证失败
禁用灰色背景不可编辑

3.2.2 表单验证时机

验证类型触发时机反馈方式
实时验证输入过程中即时显示验证结果
失焦验证离开输入框时显示验证结果
提交验证点击提交按钮时汇总显示所有错误

3.2.3 表单交互示例

┌─────────────────────────────────────┐
│  用户名 *                            │
│  ┌─────────────────────────────┐   │
│  │ zhangs                      │   │  ← 聚焦状态:蓝色边框
│  └─────────────────────────────┘   │
│  ✓ 用户名可用                       │  ← 验证通过提示
├─────────────────────────────────────┤
│  手机号 *                            │
│  ┌─────────────────────────────┐   │
│  │ 1380000                     │   │  ← 错误状态:红色边框
│  └─────────────────────────────┘   │
│  ⚠ 请输入完整的11位手机号            │  ← 错误提示
├─────────────────────────────────────┤
│  邮箱                                │
│  ┌─────────────────────────────┐   │
│  │                             │   │  ← 默认状态:灰色边框
│  └─────────────────────────────┘   │
└─────────────────────────────────────┘

3.3 表格交互

3.3.1 行操作

操作触发方式效果
悬停鼠标移入行行背景变色
选中点击复选框行高亮,记录选中状态
编辑点击编辑按钮进入编辑页面/弹窗
删除点击删除按钮弹出确认对话框

3.3.2 排序交互

表头:  创建时间 [↑↓]

状态说明:
- [↑↓]: 默认状态,点击升序
- [↑ ]: 升序状态,点击降序
- [ ↓]: 降序状态,点击取消排序

3.3.3 分页交互

共 128 条记录    [<] [1] [2] [3] ... [13] [>]

                 上一页(当前为第1页时禁用)

交互规则:
- 点击页码:跳转到对应页
- 点击上一页/下一页:翻页
- 快速跳转:输入页码直接跳转
- 每页条数:支持切换 10/20/50/100 条/页

3.4 弹窗交互

3.4.1 弹窗类型

类型用途关闭方式
确认框确认操作点击确认/取消按钮
提示框信息提示点击确定按钮或关闭图标
表单弹窗填写信息提交或取消
详情弹窗查看详情点击关闭图标或蒙层

3.4.2 弹窗交互规则

┌─────────────────────────────────────────────────┐
│  弹窗标题                              [×]      │
├─────────────────────────────────────────────────┤
│                                                 │
│              弹窗内容区域                        │
│                                                 │
├─────────────────────────────────────────────────┤
│              [取消]    [确认]                    │
└─────────────────────────────────────────────────┘

        点击蒙层关闭(可配置)

交互规则:
1. 打开弹窗:淡入 + 轻微缩放动画 (200ms)
2. 关闭弹窗:淡出动画 (150ms)
3. 蒙层点击:可配置是否关闭
4. ESC键:关闭弹窗
5. 打开时:背景禁止滚动

四、页面交互

4.1 页面切换

4.1.1 路由切换动画

切换类型动画效果时长
同级切换淡入淡出200ms
下级进入从右向左滑入300ms
返回上级从左向右滑出300ms
首次加载淡入400ms

4.1.2 页面加载状态

┌─────────────────────────────────────┐
│                                     │
│                                     │
│                                     │
│           ┌─────────┐              │
│           │ 加载中... │              │
│           │  ◠◡◠   │              │
│           └─────────┘              │
│                                     │
│                                     │
│                                     │
└─────────────────────────────────────┘

加载状态说明:
- 显示加载动画
- 显示加载提示文字
- 内容区域半透明遮罩
- 加载完成后淡入显示内容

4.2 导航交互

4.2.1 菜单交互

默认状态:    用户管理 [▶]
悬停状态:    用户管理 [▶]  ← 背景变色
展开状态:    用户管理 [▼]
             ├─ 用户列表    ← 子菜单展开
             ├─ 用户创建
             └─ 批量导入
选中状态:    用户管理 [▼]
             ├─ 用户列表 ✓  ← 高亮显示
             ├─ 用户创建
             └─ 批量导入

交互规则:
- 点击父菜单:展开/收起子菜单
- 点击子菜单:导航到对应页面
- 悬停父菜单(桌面端):显示子菜单浮层
- 当前页面菜单:高亮显示

4.2.2 侧边栏折叠

展开状态:                    折叠状态:
┌────────┐                 ┌────┐
│ Logo   │                 │Logo│
├────────┤                 ├────┤
│ 首页   │                 │ 🏠 │ ← 图标形式
│ 用户   │                 │ 👤 │
│ 组织   │                 │ 🏢 │
│ ...    │                 │ ...│
└────────┘                 └────┘

交互规则:
- 点击折叠按钮切换状态
- 折叠时显示图标+Tooltip
- 动画过渡:300ms
- 记住用户偏好

五、反馈交互

5.1 消息提示

5.1.1 提示类型

类型图标颜色用途自动关闭
成功绿色操作成功3秒
错误红色操作失败不关闭
警告⚠️黄色警告信息5秒
信息ℹ️蓝色普通信息3秒

5.1.2 消息位置

┌─────────────────────────────────────┐
│  [信息提示]                          │  ← 顶部居中
│                                     │
│                                     │
│                                     │
│                                     │
│                          [成功提示]  │  ← 右上角
│                                     │
│                                     │
└─────────────────────────────────────┘

位置规则:
- 全局消息:顶部居中
- 操作反馈:右上角
- 表单错误:字段下方

5.1.3 消息交互

成功提示示例:
┌─────────────────────────────────────┐
│  ✅ 用户创建成功                     │
│  [查看详情] [继续创建]        [×]   │
└─────────────────────────────────────┘

交互规则:
- 自动关闭倒计时
- 鼠标悬停暂停倒计时
- 点击关闭按钮立即关闭
- 支持操作按钮

5.2 加载状态

5.2.1 加载类型

类型适用场景效果
全局加载页面切换全屏加载动画
局部加载数据加载内容区域加载动画
按钮加载提交操作按钮内加载图标
骨架屏列表加载骨架屏占位

5.2.2 加载动画

全局加载:
┌─────────────────────────────────────┐
│                                     │
│                                     │
│           ╭──────╮                 │
│           │ ◠◡◠  │  加载中...      │
│           ╰──────╯                 │
│                                     │
│                                     │
└─────────────────────────────────────┘

按钮加载:
┌─────────────────┐
│  ⟳  提交中...   │  ← 按钮内旋转图标
└─────────────────┘

骨架屏:
┌─────────────────────────────────────┐
│  ████████████  ████████████████    │
│  ████████      ████████████████    │
│  ████████████  ████████████████    │
│  ████████      ████████████████    │
└─────────────────────────────────────┘

5.3 确认对话框

5.3.1 确认类型

类型场景按钮配置
普通确认一般操作确认取消 + 确认
危险确认删除等危险操作取消 + 危险操作
输入确认需要输入确认取消 + 确认(带输入框)

5.3.2 确认对话框交互

删除确认:
┌─────────────────────────────────────┐
│  ⚠️ 确认删除              [×]       │
├─────────────────────────────────────┤
│                                     │
│  确定要删除用户"张三"吗?            │
│  删除后数据将无法恢复。              │
│                                     │
│  [取消]          [删除]             │
│                                     │
└─────────────────────────────────────┘

输入确认:
┌─────────────────────────────────────┐
│  ⚠️ 危险操作确认          [×]       │
├─────────────────────────────────────┤
│                                     │
│  此操作将删除所有数据,不可恢复。     │
│  请输入"DELETE"确认操作:            │
│  ┌─────────────────────────────┐   │
│  │                             │   │
│  └─────────────────────────────┘   │
│                                     │
│  [取消]          [确认删除]         │
│                                     │
└─────────────────────────────────────┘

交互规则:
- 危险操作需要二次确认
- 输入确认需要输入指定文字
- 确认按钮在输入正确后才可点击

六、手势交互(移动端)

6.1 手势定义

手势操作效果
点击单指点击选中/进入
长按长按1秒显示操作菜单
滑动左右滑动切换/删除
下拉向下滑动刷新
上拉向上滑动加载更多
捏合双指捏合缩放

6.2 移动端交互

6.2.1 列表滑动操作

列表项左滑:
┌─────────────────────────────────────┐
│  张三                    [编辑][删除]│  ← 左滑显示操作按钮
│  技术部 · 前端工程师                 │
└─────────────────────────────────────┘

列表项右滑:
┌─────────────────────────────────────┐
│[标记已读]  系统通知                  │  ← 右滑显示快捷操作
│  您有一条新的审批消息                │
└─────────────────────────────────────┘

交互规则:
- 滑动距离超过50%触发操作
- 滑动速度过快直接触发
- 支持快速滑动删除

6.2.2 下拉刷新

下拉状态:
┌─────────────────────────────────────┐
│         ↓ 下拉刷新                  │
│                                     │
│  ┌─────────────────────────────┐   │
│  │  列表项1                     │   │
│  └─────────────────────────────┘   │
│  ┌─────────────────────────────┐   │
│  │  列表项2                     │   │
│  └─────────────────────────────┘   │
└─────────────────────────────────────┘

释放刷新:
┌─────────────────────────────────────┐
│         ⟳ 刷新中...                 │
│                                     │
│  ┌─────────────────────────────┐   │
│  │  列表项1                     │   │
│  └─────────────────────────────┘   │
└─────────────────────────────────────┘

交互规则:
- 下拉距离超过80px触发刷新
- 释放后显示刷新动画
- 刷新完成后回弹

七、动画规范

7.1 动画时长

动画类型时长缓动函数
微交互150msease-out
组件动画200msease-in-out
页面切换300msease-in-out
弹窗动画200mscubic-bezier(0.4, 0, 0.2, 1)

7.2 动画效果

7.2.1 淡入淡出

css
/* 淡入 */
@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

/* 淡出 */
@keyframes fadeOut {
  from { opacity: 1; }
  to { opacity: 0; }
}

/* 应用 */
.element {
  animation: fadeIn 200ms ease-in-out;
}

7.2.2 滑动动画

css
/* 从右滑入 */
@keyframes slideInRight {
  from {
    transform: translateX(100%);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}

/* 应用 */
.page-enter {
  animation: slideInRight 300ms ease-in-out;
}

7.2.3 缩放动画

css
/* 弹窗缩放 */
@keyframes modalScale {
  from {
    transform: scale(0.8);
    opacity: 0;
  }
  to {
    transform: scale(1);
    opacity: 1;
  }
}

/* 应用 */
.modal {
  animation: modalScale 200ms cubic-bezier(0.4, 0, 0.2, 1);
}

八、键盘交互

8.1 快捷键

快捷键功能适用场景
Ctrl + S保存表单页面
Ctrl + F搜索列表页面
Ctrl + N新建列表页面
Esc关闭弹窗/取消全局
Enter确认/提交表单、弹窗
Tab切换焦点表单
↑/↓上下选择下拉框、列表

8.2 焦点管理

焦点顺序:
┌─────────────────────────────────────┐
│  用户名                              │
│  [输入框1]  ←── Tab ──→  [输入框2]  │
│  密码                                │
│  [输入框2]  ←── Tab ──→  [按钮]     │
│                                     │
│  [登录按钮] ←── Tab ──→  [链接]     │
└─────────────────────────────────────┘

焦点样式:
- 输入框:蓝色边框 + 阴影
- 按钮:蓝色边框
- 链接:下划线

九、无障碍交互

9.1 键盘无障碍

  • 所有功能支持键盘操作
  • 焦点顺序符合逻辑
  • 提供焦点指示器

9.2 屏幕阅读器

  • 图片提供alt文本
  • 表单提供label关联
  • 动态内容提供aria-live

9.3 视觉无障碍

  • 支持高对比度模式
  • 文字可缩放至200%
  • 不依赖颜色传递信息

十、修订记录

版本日期作者变更内容
1.02026-03-09UI/UX设计师初始版本,创建交互说明文档

文档状态: ⏳ 进行中
最后更新: 2026-03-09
文档作者: UI/UX设计师

Released under the MIT License.