Files
dsProject/dsLightRag/static/JiMeng/cases.html
2025-08-21 11:24:48 +08:00

399 lines
24 KiB
HTML
Raw 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>推荐案例 - 教学视频AI生成智能体</title>
<style>
* { margin: 0; padding: 0; box-sizing: border-box; font-family: 'PingFang SC', 'Microsoft YaHei', sans-serif; }
body { background-color: #f5f7fa; color: #333; line-height: 1.6; }
.container { max-width: 1200px; margin: 0 auto; padding: 20px; }
header { text-align: center; padding: 60px 20px; background: linear-gradient(135deg, #3498db, #8e44ad); color: white; border-radius: 10px; margin-bottom: 40px; box-shadow: 0 4px 15px rgba(0,0,0,0.1); }
h1 { font-size: 2.5rem; margin-bottom: 15px; font-weight: 700; }
.subtitle { font-size: 1.2rem; opacity: 0.9; max-width: 800px; margin: 0 auto; }
/* 导航栏样式 */
.navbar { background-color: white; box-shadow: 0 2px 10px rgba(0,0,0,0.1); border-radius: 6px; margin-bottom: 30px; padding: 15px 20px; display: flex; justify-content: space-between; align-items: center; }
.navbar-brand { font-size: 1.5rem; font-weight: bold; color: #3498db; text-decoration: none; }
.navbar-links { display: flex; gap: 20px; }
.navbar-link { color: #333; text-decoration: none; padding: 8px 15px; border-radius: 6px; transition: background 0.3s; }
.navbar-link:hover { background-color: #f5f7fa; }
.navbar-link.active { background-color: #e8f4fd; color: #3498db; font-weight: 500; }
/* 案例展示区域 */
.cases-container { margin: 40px 0; }
.section-title { text-align: center; font-size: 2rem; margin-bottom: 30px; color: #2c3e50; position: relative; }
.section-title::after { content: ''; display: block; width: 80px; height: 4px; background: linear-gradient(90deg, #3498db, #8e44ad); margin: 15px auto 0; border-radius: 2px; }
.cases-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); gap: 30px; }
.case-card { background-color: white; border-radius: 10px; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.1); transition: transform 0.3s, box-shadow 0.3s; opacity: 0; transform: translateY(20px); }
.case-card.visible { opacity: 1; transform: translateY(0); }
.case-card:hover { transform: translateY(-10px); box-shadow: 0 10px 25px rgba(0,0,0,0.15); }
.case-thumbnail { height: 200px; overflow: hidden; position: relative; }
.case-thumbnail img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s; }
.case-card:hover .case-thumbnail img { transform: scale(1.05); }
.play-icon { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 60px; height: 60px; background-color: rgba(0,0,0,0.6); border-radius: 50%; display: flex; align-items: center; justify-content: center; color: white; font-size: 24px; opacity: 0; transition: opacity 0.3s; }
.case-card:hover .play-icon { opacity: 1; }
.case-content { padding: 20px; }
.case-title { font-size: 1.3rem; margin-bottom: 10px; color: #2c3e50; }
.case-meta { display: flex; justify-content: space-between; margin-bottom: 15px; color: #7f8c8d; font-size: 0.9rem; }
.case-description { color: #666; margin-bottom: 20px; }
.case-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 15px; }
.case-tag { background-color: #e8f4fd; color: #3498db; padding: 4px 10px; border-radius: 20px; font-size: 0.8rem; }
.btn { padding: 10px 20px; border: none; border-radius: 6px; cursor: pointer; font-size: 16px; transition: background 0.3s; text-decoration: none; display: inline-block; }
.btn-primary { background-color: #3498db; color: white; }
.btn-primary:hover { background-color: #2980b9; }
.btn-outline { background-color: transparent; border: 1px solid #3498db; color: #3498db; margin-left: 10px; }
.btn-outline:hover { background-color: #e8f4fd; }
/* 案例详情模态框 */
.modal { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0,0,0,0.7); z-index: 1000; overflow: auto; }
.modal-content { background-color: white; margin: 5% auto; padding: 30px; width: 90%; max-width: 1000px; border-radius: 10px; position: relative; box-shadow: 0 5px 30px rgba(0,0,0,0.2); animation: modalFadeIn 0.4s; }
@keyframes modalFadeIn { from { opacity: 0; transform: translateY(-50px); } to { opacity: 1; transform: translateY(0); } }
.close-modal { position: absolute; top: 15px; right: 20px; font-size: 28px; cursor: pointer; color: #7f8c8d; }
.modal-header { margin-bottom: 20px; padding-bottom: 15px; border-bottom: 1px solid #eee; }
.modal-title { font-size: 1.8rem; color: #2c3e50; }
.modal-body { margin-bottom: 20px; }
.modal-video-container { position: relative; padding-bottom: 56.25%; height: 0; margin-bottom: 20px; overflow: hidden; }
.modal-video-container iframe, .modal-video-container video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.case-details { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; margin-bottom: 30px; }
@media (max-width: 768px) { .case-details { grid-template-columns: 1fr; } }
.detail-section { margin-bottom: 20px; }
.detail-title { font-size: 1.2rem; margin-bottom: 10px; color: #2c3e50; display: flex; align-items: center; }
.detail-title i { margin-right: 10px; color: #3498db; }
.detail-content { color: #666; line-height: 1.7; }
.process-steps { margin-top: 30px; }
.step { margin-bottom: 25px; padding-left: 30px; position: relative; }
.step::before { content: ''; position: absolute; left: 0; top: 5px; width: 12px; height: 12px; border-radius: 50%; background-color: #3498db; }
.step-title { font-weight: bold; margin-bottom: 5px; color: #2c3e50; }
.step-description { color: #666; }
footer { text-align: center; padding: 30px 0; margin-top: 60px; color: #7f8c8d; border-top: 1px solid #eee; }
@media screen and (max-width: 768px) {
h1 { font-size: 2rem; }
.navbar { flex-direction: column; gap: 15px; }
.navbar-links { width: 100%; justify-content: center; }
.cases-grid { grid-template-columns: 1fr; }
.modal-content { margin: 10% auto; }
}
</style>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
</head>
<body>
<div class="container">
<header>
<h1>教学视频AI生成智能体</h1>
<p class="subtitle">轻松创建专业级教学视频从提示词到完整视频一站式AI生成解决方案</p>
</header>
<!-- 导航栏 -->
<nav class="navbar">
<a href="index.html" class="navbar-brand">教学视频AI</a>
<div class="navbar-links">
<a href="index.html" class="navbar-link">首页</a>
<a href="prompt_input.html" class="navbar-link">创建提示词</a>
<a href="history.html" class="navbar-link">历史记录</a>
<a href="cases.html" class="navbar-link active">推荐案例</a>
</div>
</nav>
<!-- 案例展示区域 -->
<div class="cases-container">
<h2 class="section-title">优秀教学视频案例</h2>
<p style="text-align: center; color: #666; margin-bottom: 40px; max-width: 800px; margin-left: auto; margin-right: auto;">探索我们平台上生成的高质量教学视频案例,了解它们的制作过程和效果,为您的创作提供灵感。</p>
<div class="cases-grid">
<!-- 案例1 -->
<div class="case-card" data-case="case1">
<div class="case-thumbnail">
<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/JiMeng/OldWomenAndLittleGirl.jpg" alt="老婆婆与小女孩">
<div class="play-icon"><i class="fas fa-play"></i></div>
</div>
<div class="case-content">
<h3 class="case-title">老婆婆与小女孩</h3>
<div class="case-meta">
<span><i class="fas fa-eye"></i> 3.2k 观看</span>
<span><i class="fas fa-star"></i> 4.9/5 评分</span>
</div>
<div class="case-tags">
<span class="case-tag">生活故事</span>
<span class="case-tag">情感</span>
<span class="case-tag">人文关怀</span>
</div>
<p class="case-description">讲述老婆婆与小女孩之间温馨互动的感人故事,展现人性的美好与善良。</p>
<button class="btn btn-primary view-case" data-case="case1">查看详情</button>
</div>
</div>
<!-- 案例2 -->
<div class="case-card" data-case="case2">
<div class="case-thumbnail">
<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/JiMeng/d0d62a64-86b0-4511-9dff-f8bf7d6570d1.jpg" alt="雨伞与快递车">
<div class="play-icon"><i class="fas fa-play"></i></div>
</div>
<div class="case-content">
<h3 class="case-title">雨伞与快递车</h3>
<div class="case-meta">
<span><i class="fas fa-eye"></i> 2.8k 观看</span>
<span><i class="fas fa-star"></i> 4.7/5 评分</span>
</div>
<div class="case-tags">
<span class="case-tag">都市生活</span>
<span class="case-tag">职业故事</span>
<span class="case-tag">温情</span>
</div>
<p class="case-description">描绘雨天里快递员与顾客之间的暖心互动,展现平凡职业中的坚守与理解。</p>
<button class="btn btn-primary view-case" data-case="case2">查看详情</button>
</div>
</div>
<!-- 案例3 -->
<div class="case-card" data-case="case3">
<div class="case-thumbnail">
<img src="https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/JiMeng/5c72b5b1-736b-446d-82b0-d0c57713fe53.jpg" alt="女孩与小狗">
<div class="play-icon"><i class="fas fa-play"></i></div>
</div>
<div class="case-content">
<h3 class="case-title">女孩与小狗</h3>
<div class="case-meta">
<span><i class="fas fa-eye"></i> 3.5k 观看</span>
<span><i class="fas fa-star"></i> 4.8/5 评分</span>
</div>
<div class="case-tags">
<span class="case-tag">宠物</span>
<span class="case-tag">友谊</span>
<span class="case-tag">成长</span>
</div>
<p class="case-description">讲述孤独女孩与流浪小狗相识相知的故事,展现陪伴与爱的力量。</p>
<button class="btn btn-primary view-case" data-case="case3">查看详情</button>
</div>
</div>
</div>
</div>
<footer>
<p>© 2023 教学视频AI生成智能体 | 让教育内容创作更简单</p>
</footer>
</div>
<!-- 案例详情模态框 -->
<div id="caseModal" class="modal">
<div class="modal-content">
<span class="close-modal">&times;</span>
<div class="modal-header">
<h2 class="modal-title" id="modalTitle"></h2>
</div>
<div class="modal-body" id="modalBody">
<!-- 模态框内容将通过JavaScript动态填充 -->
</div>
</div>
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
// 案例数据
const casesData = {
case1: {
title: "老婆婆与小女孩",
thumbnail: "https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/JiMeng/OldWomenAndLittleGirl.jpg",
video: "https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/JiMeng/OldWomenAndLittleGirl.mp4",
views: "3.2k",
rating: "4.9/5",
tags: ["生活故事", "情感", "人文关怀"],
description: "本视频讲述了老婆婆与小女孩之间温馨互动的感人故事,展现了人性的美好与善良。通过细腻的情感描写和生动的场景,传递了关爱与陪伴的重要性。",
creator: "AI生成",
subject: "人文",
grade: "全年龄段",
duration: "4:15",
process: [
{ title: "提示词生成", description: "输入故事主题、情感基调,生成详细的故事大纲。" },
{ title: "分镜头脚本", description: "系统自动生成包含场景转换、人物动作和情感表达的分镜头脚本。" },
{ title: "视频生成", description: "AI根据脚本生成完整的视频包含角色动画、场景渲染和背景音乐。" },
{ title: "后期优化", description: "对生成的视频进行色彩校正、音效增强等后期处理,提升观看体验。" }
],
keyPoints: ["情感表达", "人文关怀", "故事叙事", "视觉呈现"]
},
case2: {
title: "雨伞与快递车",
thumbnail: "https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/JiMeng/d0d62a64-86b0-4511-9dff-f8bf7d6570d1.jpg",
video: "https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/JiMeng/d0d62a64-86b0-4511-9dff-f8bf7d6570d1.mp4",
views: "2.8k",
rating: "4.7/5",
tags: ["都市生活", "职业故事", "温情"],
description: "本视频描绘了雨天里快递员与顾客之间的暖心互动,展现了平凡职业中的坚守与理解。通过真实的场景和细腻的情感刻画,传递了人与人之间的温暖与包容。",
creator: "AI生成",
subject: "社会",
grade: "全年龄段",
duration: "3:50",
process: [
{ title: "提示词生成", description: "输入场景设定、人物关系,生成详细的故事梗概。" },
{ title: "分镜头脚本", description: "系统生成包含天气效果、人物动作和情感变化的分镜头脚本。" },
{ title: "视频生成", description: "AI根据脚本生成视频包含场景搭建、角色动画和环境特效。" },
{ title: "后期优化", description: "添加音效、调整色彩,增强视频的情感表达和视觉冲击力。" }
],
keyPoints: ["职业respect", "人际理解", "情感共鸣", "视觉叙事"]
},
case3: {
title: "女孩与小狗",
thumbnail: "https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/JiMeng/5c72b5b1-736b-446d-82b0-d0c57713fe53.jpg",
video: "https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/JiMeng/5c72b5b1-736b-446d-82b0-d0c57713fe53.mp4",
views: "3.5k",
rating: "4.8/5",
tags: ["宠物", "友谊", "成长"],
description: "本视频讲述了孤独女孩与流浪小狗相识相知的故事,展现了陪伴与爱的力量。通过温暖的画面和真挚的情感,传递了生命之间的羁绊与治愈的力量。",
creator: "AI生成",
subject: "情感",
grade: "全年龄段",
duration: "4:30",
process: [
{ title: "提示词生成", description: "输入故事主题、主要角色,生成详细的情节发展。" },
{ title: "分镜头脚本", description: "系统生成包含角色互动、情感变化和关键场景的分镜头脚本。" },
{ title: "视频生成", description: "AI根据脚本生成视频包含角色设计、场景构建和动画效果。" },
{ title: "后期优化", description: "添加背景音乐、调整节奏,增强视频的情感感染力。" }
],
keyPoints: ["友谊", "陪伴", "成长", "情感治愈"]
}
};
// 模态框相关元素
const modal = document.getElementById('caseModal');
const closeModal = document.querySelector('.close-modal');
const modalTitle = document.getElementById('modalTitle');
const modalBody = document.getElementById('modalBody');
const viewButtons = document.querySelectorAll('.view-case');
// 打开模态框
viewButtons.forEach(button => {
button.addEventListener('click', function() {
const caseId = this.getAttribute('data-case');
const caseData = casesData[caseId];
// 填充模态框内容
modalTitle.textContent = caseData.title;
let tagsHtml = '';
caseData.tags.forEach(tag => {
tagsHtml += `<span class="case-tag">${tag}</span>`;
});
let processHtml = '';
caseData.process.forEach((step, index) => {
processHtml += `
<div class="step">
<div class="step-title">步骤 ${index + 1}: ${step.title}</div>
<div class="step-description">${step.description}</div>
</div>
`;
});
let keyPointsHtml = '';
caseData.keyPoints.forEach(point => {
keyPointsHtml += `<li>${point}</li>`;
});
modalBody.innerHTML = `
<div class="modal-video-container">
<video controls>
<source src="${caseData.video}" type="video/mp4">
您的浏览器不支持HTML5视频播放。
</video>
</div>
<div class="case-details">
<div>
<div class="detail-section">
<h3 class="detail-title"><i class="fas fa-info-circle"></i> 案例信息</h3>
<div class="detail-content">
<p><strong>创作者:</strong> ${caseData.creator}</p>
<p><strong>主题:</strong> ${caseData.subject}</p>
<p><strong>适合人群:</strong> ${caseData.grade}</p>
<p><strong>时长:</strong> ${caseData.duration}</p>
<p><strong>观看次数:</strong> ${caseData.views}</p>
<p><strong>评分:</strong> ${caseData.rating}</p>
</div>
</div>
<div class="detail-section">
<h3 class="detail-title"><i class="fas fa-tags"></i> 标签</h3>
<div class="case-tags">
${tagsHtml}
</div>
</div>
</div>
<div>
<div class="detail-section">
<h3 class="detail-title"><i class="fas fa-book-open"></i> 案例描述</h3>
<div class="detail-content">
${caseData.description}
</div>
</div>
<div class="detail-section">
<h3 class="detail-title"><i class="fas fa-list-check"></i> 亮点</h3>
<div class="detail-content">
<ul>
${keyPointsHtml}
</ul>
</div>
</div>
</div>
</div>
<div class="detail-section process-steps">
<h3 class="detail-title"><i class="fas fa-route"></i> 制作过程</h3>
${processHtml}
</div>
<div style="text-align: center; margin-top: 30px;">
<button class="btn btn-primary" onclick="window.location.href='prompt_input.html'">创建类似案例</button>
<button class="btn btn-outline close-modal-btn">关闭</button>
</div>
`;
// 显示模态框
modal.style.display = 'block';
// 为动态添加的关闭按钮绑定事件
document.querySelector('.close-modal-btn').addEventListener('click', function() {
modal.style.display = 'none';
});
});
});
// 关闭模态框
closeModal.addEventListener('click', function() {
modal.style.display = 'none';
});
// 点击模态框外部关闭
window.addEventListener('click', function(event) {
if (event.target === modal) {
modal.style.display = 'none';
}
});
// 滚动动画效果
const caseCards = document.querySelectorAll('.case-card');
function checkVisibility() {
const triggerBottom = window.innerHeight * 0.8;
caseCards.forEach(card => {
const cardTop = card.getBoundingClientRect().top;
if (cardTop < triggerBottom) {
card.classList.add('visible');
}
});
}
// 初始检查
checkVisibility();
// 滚动时检查
window.addEventListener('scroll', checkVisibility);
});
</script>
</body>
</html>