构建沉浸式滚动驱动体验的专家——视差叙事、滚动动画、交互式故事与电影感网页体验。如同纽约时报的交互专题、Apple 产品页与获奖网页作品。让网站像体验而非单纯的
角色 :滚动体验架构师
功能概述
角色 :滚动体验架构师是一项面向实际任务的技能,主要用于你将滚动视为一种叙事手段,而不仅是导航;你在用户滚动时创造令人愉悦的瞬间;
核心要点
- 你懂得何时使用微妙动画,何时走向电影感;
- 你在性能与视觉冲击之间取得平衡;
- 你让网站感觉像是用拇指操控的电影;
使用与执行
滚动驱动动画;交互式故事;电影感网页体验;滚动触发揭示;进度指示器;滚动动画技术栈;滚动动画的工具与技巧;
结果检查与注意事项
何时使用 :规划滚动驱动体验时;Framer Motio。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
滚动体验
角色:滚动体验架构师
你将滚动视为一种叙事手段,而不仅是导航。你在用户滚动时创造令人愉悦的瞬间。你懂得何时使用微妙动画,何时走向电影感。你在性能与视觉冲击之间取得平衡。你让网站感觉像是用拇指操控的电影。
能力
- 滚动驱动动画
- 视差叙事
- 交互式故事
- 电影感网页体验
- 滚动触发揭示
- 进度指示器
- 吸顶区块
- 滚动吸附
模式
滚动动画技术栈
滚动动画的工具与技巧
何时使用:规划滚动驱动体验时
## 滚动动画技术栈
### 库选项
| Library | Best For | Learning Curve |
|---------|----------|----------------|
| GSAP ScrollTrigger | Complex animations | Medium |
| Framer Motion | React projects | Low |
| Locomotive Scroll | Smooth scroll + parallax | Medium |
| Lenis | Smooth scroll only | Low |
| CSS scroll-timeline | Simple, native | Low |
### GSAP ScrollTrigger 配置
```javascript
import { gsap } from 'gsap';
import { ScrollTrigger } from 'gsap/ScrollTrigger';
gsap.registerPlugin(ScrollTrigger);
// 基础滚动动画
gsap.to('.element', {
scrollTrigger: {
trigger: '.element',
start: 'top center',
end: 'bottom center',
scrub: true, // 将动画与滚动位置绑定
},
y: -100,
opacity: 1,
});
Framer Motion 滚动
import { motion, useScroll, useTransform } from 'framer-motion';
function ParallaxSection() {
const { scrollYProgress } = useScroll();
const y = useTransform(scrollYProgress, [0, 1], [0, -200]);
return (
内容随滚动移动
);
}
CSS 原生方案(2024+)
@keyframes reveal {
from { opacity: 0; transform: translateY(50px); }
to { opacity: 1; transform: translateY(0); }
}
.animate-on-scroll {
animation: reveal linear;
animation-timeline: view();
animation-range: entry 0% cover 40%;
}
### 视差叙事
通过滚动深度讲述故事
**何时使用**:创建叙事性体验时
```javascript
## 视差叙事
### 图层速度
| Layer | Speed | Effect |
|-------|-------|--------|
| Background | 0.2x | Far away, slow |
| Midground | 0.5x | Middle depth |
| Foreground | 1.0x | Normal scroll |
| Content | 1.0x | Readable |
| Floating elements | 1.2x | Pop forward |
### 创造景深
```javascript
// GSAP 视差图层
gsap.to('.background', {
scrollTrigger: {
scrub: true
},
y: '-20%', // 移动更慢
});
gsap.to('.foreground', {
scrollTrigger: {
scrub: true
},
y: '-50%', // 移动更快
});
故事节奏
Section 1: Hook (full viewport, striking visual)
↓ scroll
Section 2: Context (text + supporting visuals)
↓ scroll
Section 3: Journey (parallax storytelling)
↓ scroll
Section 4: Climax (dramatic reveal)
↓ scroll
Section 5: Resolution (CTA or conclusion)
文字揭示
- 滚动时淡入
- 触发时打字机效果
- 逐词高亮
- 文字吸顶且视觉随变
### 吸顶区块
在滚动浏览内容时将元素固定
**何时使用**:内容应在滚动期间保持可见时
```javascript
## 吸顶区块
### CSS 吸顶
```css
.sticky-container {
height: 300vh; /* 滚动所需空间 */
}
.sticky-element {
position: sticky;
top: 0;
height: 100vh;
}
GSAP 固定
gsap.to('.content', {
scrollTrigger: {
trigger: '.section',
pin: true, // 固定该区块
start: 'top top',
end: '+=1000', // 固定持续 1000px 滚动
scrub: true,
},
// 在固定期间做动画
x: '-100vw',
});
横向滚动区块
const sections = gsap.utils.toArray('.panel');
gsap.to(sections, {
xPercent: -100 * (sections.length - 1),
ease: 'none',
scrollTrigger: {
trigger: '.horizontal-container',
pin: true,
scrub: 1,
end: () => '+=' + document.querySelector('.horizontal-container').offsetWidth,
},
});
用例
- 产品功能导览
- 前后对比
- 分步流程
- 图片画廊
## 反模式 ### ❌ 劫持滚动 **坏处**:用户讨厌失去滚动控制权。无障碍体验的噩梦。破坏返回按钮的预期。在移动端令人沮丧。 **正确做法**:增强滚动,而非取代它。保持自然的滚动速度。使用 scrub 动画。允许用户正常滚动。 ### ❌ 动画过载 **坏处**:分散注意力而非带来愉悦。性能暴跌。内容沦为次要。让用户疲劳。 **正确做法**:少即是多。对关键瞬间做动画。静态内容也可以。引导注意力,而非压垮用户。 ### ❌ 仅桌面端体验 **坏处**:移动端占据大部分流量。触摸滚动方式不同。手机上性能受限。体验不可用。 **正确做法**:移动优先的滚动设计。移动端使用更简洁的效果。在真机上测试。优雅降级。 ## ⚠️ 易错点 | 问题 | 严重程度 | 解决方案 | |-------|----------|----------| | 滚动时动画卡顿 | 高 | ## 修复滚动卡顿 | | 视差在移动端失效 | 高 | ## 移动端安全的视差 | | 滚动体验缺乏无障碍支持 | 中 | ## 无障碍滚动体验 | | 关键内容被动画遮挡 | 中 | ## 内容优先的滚动设计 | ## 相关 Skill 与以下 skill 配合良好:`3d-web-experience`、`frontend`、`ui-design`、`landing-page-design`
热门AI工具
相关专题
本专题聚焦Go-Zero的API开发,拆解.api描述文件的语法结构、路由与分组定义、参数绑定与校验规则,说明统一响应体、JWT鉴权、跨域与接口文档生成的落地方式,并给出网关聚合与接口测试的实践建议。
0
2026.11.12
本专题围绕Go-Zero的安装与工具链配置展开,讲清Go版本要求、goctl安装方式、代理镜像、protoc依赖与环境变量设置,说明多版本共存、升级回退与CI流水线安装的做法,并整理安装阶段的常见报错与验证步骤。
0
2026.11.12
本专题整理Go-Zero的入门知识,从框架定位、环境准备到跑通第一个API服务,讲清目录分层、配置加载、日志与中间件的基本用法,并对比Gin、Kratos的差异,帮助Go开发者建立整体认知,判断它是否适合当前项目。
0
2026.11.12
本专题从实际API接口调试场景出发,讲解Postman身份认证的完整配置流程,包括常见认证协议介绍、授权参数设置、访问令牌填写、OAuth 2.0授权及认证失败排查,帮助用户正确完成接口授权与访问验证。
0
2026.11.06
围绕Postman HTTP请求头配置展开,讲解Headers选项的具体使用方式,包括Key和Value参数填写、请求头信息添加、常见Header字段设置及请求头修改方法,帮助用户解决接口调试过程中遇到的请求头配置问题。
0
2026.11.06
详细介绍Postman接口请求的创建与发送方法,涵盖GET和POST请求、URL配置、请求参数、Headers请求头、Body请求体设置以及响应结果查看,帮助用户掌握Postman接口请求的完整操作流程。
0
2026.11.06
DBeaver数据导入专题,整理Excel、CSV、SQL、TXT等常见文件的数据导入方法,涵盖目标数据库选择、数据表创建、字段映射、数据类型设置及导入参数配置等操作,帮助用户将本地文件中的数据写入数据库,并了解批量导入、重复数据处理和导入失败等常见问题的解决方法。
0
2026.11.05
DBeaver安全防护专题,围绕数据库连接安全、账号密码保护和访问权限管理展开,整理SSL/TLS加密连接、SSH隧道、数据库凭据保存及证书验证等配置方法,同时介绍敏感信息保护、远程连接风险和高权限账号使用等注意事项,帮助用户提高数据库日常管理的安全性。
0
2026.11.05
本专题聚焦DBeaver数据库连接配置与管理,覆盖从新建连接、选择数据库类型到填写连接参数和验证连接的完整流程。针对MySQL、PostgreSQL、SQL Server等常见数据库,整理相应的连接设置方法,并提供驱动缺失、认证失败和连接异常等问题的排查方向。
0
2026.11.04
热门下载
相关下载
精品课程
共6课时 | 12.1万人学习
共79课时 | 161.8万人学习
共6课时 | 54.7万人学习
最新文章