Files
freedak f7a720204a Update: 将子项目从 submodule 转为完整内容
- 移除 GovAI, nomifun-tauri, 算力盒子 的 submodule 引用
- 添加所有子项目的完整源代码
- 保留原始 .git 为 .git.bak 备份
2026-07-04 19:20:46 +08:00

243 lines
5.9 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>S3 - 应用即插即用</title>
<script src="https://cdn.jsdelivr.net/npm/gsap@3.12.5/dist/gsap.min.js"></script>
<style>
:root {
--bg-deep: #0A1A33;
--bg-panel: #10243F;
--brand-blue: #1E5BC6;
--gold: #D4A437;
--seal-red: #C0392B;
--text-hi: #F2F6FC;
--text-lo: #9DB2CE;
--line: #2A436B;
}
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
width: 1920px;
height: 1080px;
overflow: hidden;
font-family: "PingFang SC", "Source Han Sans SC", "Helvetica Neue", sans-serif;
background: var(--bg-deep);
position: relative;
}
.clip {
position: absolute;
}
/* 主视觉截图 */
.main-visual {
width: 1600px;
height: 900px;
border-radius: 12px;
overflow: hidden;
box-shadow: 0 12px 48px rgba(0, 0, 0, 0.6);
}
.main-visual img {
width: 100%;
height: 100%;
object-fit: cover;
}
/* 标题 */
.title {
font-size: 64px;
font-weight: bold;
color: var(--text-hi);
letter-spacing: 6px;
text-align: center;
text-shadow: 0 4px 16px rgba(0, 0, 0, 0.5);
}
/* 应用卡片网格 */
.app-grid {
display: grid;
grid-template-columns: repeat(3, 320px);
gap: 40px;
}
.app-card {
width: 320px;
height: 180px;
background: var(--bg-panel);
border: 2px solid var(--line);
border-radius: 12px;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
position: relative;
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4);
}
.app-card .badge {
position: absolute;
top: 12px;
right: 12px;
width: 24px;
height: 24px;
background: var(--gold);
border-radius: 50%;
}
.app-card .name {
font-size: 28px;
font-weight: 600;
color: var(--text-hi);
margin-bottom: 8px;
}
.app-card .category {
font-size: 18px;
color: var(--text-lo);
}
/* 快闪截图 */
.flash-screen {
width: 1400px;
height: 800px;
border-radius: 12px;
overflow: hidden;
box-shadow: 0 12px 48px rgba(0, 0, 0, 0.6);
}
.flash-screen img {
width: 100%;
height: 100%;
object-fit: cover;
}
</style>
</head>
<body data-composition-id="s3-apps" data-width="1920" data-height="1080">
<!-- Track 1: 主视觉 - 应用商店 (012s,向左推进) -->
<div class="clip main-visual"
data-start="0"
data-duration="7"
data-track-index="1"
style="top: 50%; left: 50%; transform: translate(-50%, -50%) translateX(200px); opacity: 0;">
<img src="assets/capture/01_store.png" alt="AI应用中心">
</div>
<!-- Track 2: 标题 (212s) -->
<div class="clip title"
data-start="2"
data-duration="10"
data-track-index="2"
style="top: 120px; left: 50%; transform: translateX(-50%) translateY(24px); opacity: 0;">
数十款政法专用应用
</div>
<!-- Track 1: 应用卡片网格 (48s) -->
<div class="clip app-grid"
data-start="4"
data-duration="4"
data-track-index="1"
style="top: 50%; left: 50%; transform: translate(-50%, -50%); opacity: 0;">
<div class="app-card">
<div class="badge"></div>
<div class="name">公文写作</div>
<div class="category">办文场景</div>
</div>
<div class="app-card">
<div class="badge"></div>
<div class="name">法规问答</div>
<div class="category">办案场景</div>
</div>
<div class="app-card">
<div class="badge"></div>
<div class="name">案件研判</div>
<div class="category">研判场景</div>
</div>
<div class="app-card">
<div class="badge"></div>
<div class="name">来信回复</div>
<div class="category">办文场景</div>
</div>
<div class="app-card">
<div class="badge"></div>
<div class="name">舆情宣传</div>
<div class="category">研判场景</div>
</div>
<div class="app-card">
<div class="badge"></div>
<div class="name">外事翻译</div>
<div class="category">办文场景</div>
</div>
</div>
<!-- Track 1: 快闪 - 法规问答 (810s) -->
<div class="clip flash-screen"
data-start="8"
data-duration="2"
data-track-index="1"
style="top: 50%; left: 50%; transform: translate(-50%, -50%); opacity: 0;">
<img src="assets/capture/09_chat.png" alt="法规问答">
</div>
<!-- Track 1: 快闪 - 创建应用 (1012s) -->
<div class="clip flash-screen"
data-start="10"
data-duration="2"
data-track-index="1"
style="top: 50%; left: 50%; transform: translate(-50%, -50%); opacity: 0;">
<img src="assets/capture/04_create.png" alt="创建应用">
</div>
<script>
window.__timelines = window.__timelines || {};
const tl = gsap.timeline({ paused: true });
window.__timelines["s3-apps"] = tl;
// 主视觉推进入场
tl.to('[data-start="0"]', {
x: 0,
opacity: 1,
duration: 1.2,
ease: "power2.out"
}, 0);
// 标题
tl.to('[data-start="2"]', {
y: 0,
opacity: 1,
duration: 0.6,
ease: "power2.out"
}, 2);
// 应用卡片网格(stagger
tl.to('[data-start="4"] .app-card', {
opacity: 1,
y: 0,
duration: 0.5,
stagger: 0.1,
ease: "back.out(1.5)"
}, 4);
// 快闪1 - 法规问答
tl.to('[data-start="8"]', {
opacity: 1,
duration: 0.3,
ease: "power2.out"
}, 8);
// 快闪2 - 创建应用
tl.to('[data-start="10"]', {
opacity: 1,
duration: 0.3,
ease: "power2.out"
}, 10);
</script>
</body>
</html>