We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/lizouzt/TrendRadar'
If you have feedback or need assistance with the MCP directory API, please join our Discord server
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>热点新闻分析</title>
<script src="https://cdnjs.cloudflare.com/ajax/libs/html2canvas/1.4.1/html2canvas.min.js" integrity="sha512-BNaRQnYJYiPSqHHDb58B0yaPfCu+Wgds8Gp/gU33kqBtgNS4tSPHuGibyoeqMV/TJlSKda6FXzoEyYGjTe+vXA==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
<style>
* { box-sizing: border-box; }
body {
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
margin: 0;
padding: 16px;
background: #fafafa;
color: #333;
line-height: 1.5;
}
.container {
max-width: 600px;
margin: 0 auto;
background: white;
border-radius: 12px;
overflow: hidden;
box-shadow: 0 2px 16px rgba(0,0,0,0.06);
}
.header {
background: linear-gradient(135deg, #7a72ff 0%, #3aafed 100%);
color: #fff;
padding: 32px 24px;
text-align: center;
position: relative;
}
.save-buttons {
position: absolute;
top: 16px;
right: 16px;
display: flex;
gap: 8px;
}
.save-btn {
background: rgba(255, 255, 255, 0.2);
border: 1px solid rgba(255, 255, 255, 0.3);
color: white;
padding: 8px 16px;
border-radius: 6px;
cursor: pointer;
font-size: 13px;
font-weight: 500;
transition: all 0.2s ease;
backdrop-filter: blur(10px);
white-space: nowrap;
}
.save-btn:hover {
background: rgba(255, 255, 255, 0.3);
border-color: rgba(255, 255, 255, 0.5);
transform: translateY(-1px);
}
.save-btn:active {
transform: translateY(0);
}
.save-btn:disabled {
opacity: 0.6;
cursor: not-allowed;
}
.header-title {
font-size: 22px;
font-weight: 700;
margin: 0 0 20px 0;
}
.header-info {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px;
font-size: 14px;
opacity: 0.95;
}
.info-item {
text-align: center;
}
.info-label {
display: block;
font-size: 12px;
opacity: 0.8;
margin-bottom: 4px;
}
.info-value {
font-weight: 600;
font-size: 16px;
}
.content {
padding: 24px;
}
.word-group {
margin-bottom: 40px;
}
.word-group:first-child {
margin-top: 0;
}
.word-header {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 20px;
padding-bottom: 8px;
border-bottom: 1px solid #f0f0f0;
}
.word-info {
display: flex;
align-items: center;
gap: 12px;
}
.word-name {
font-size: 17px;
font-weight: 600;
color: #1a1a1a;
}
.word-count {
color: #666;
font-size: 13px;
font-weight: 500;
}
.word-count.hot { color: #dc2626; font-weight: 600; }
.word-count.warm { color: #ea580c; font-weight: 600; }
.word-index {
color: #999;
font-size: 12px;
}
.news-item {
margin-bottom: 20px;
padding: 16px 0;
border-bottom: 1px solid #f5f5f5;
position: relative;
display: flex;
gap: 12px;
align-items: center;
}
.news-item:last-child {
border-bottom: none;
}
.news-item.new::after {
content: "NEW";
position: absolute;
top: 12px;
right: 0;
background: #fbbf24;
color: #92400e;
font-size: 9px;
font-weight: 700;
padding: 3px 6px;
border-radius: 4px;
letter-spacing: 0.5px;
}
.news-number {
color: #999;
font-size: 13px;
font-weight: 600;
min-width: 20px;
text-align: center;
flex-shrink: 0;
background: #f8f9fa;
border-radius: 50%;
width: 24px;
height: 24px;
display: flex;
align-items: center;
justify-content: center;
align-self: flex-start;
margin-top: 8px;
}
.news-content {
flex: 1;
min-width: 0;
padding-right: 40px;
}
.news-item.new .news-content {
padding-right: 50px;
}
.news-header {
display: flex;
align-items: center;
gap: 8px;
margin-bottom: 8px;
flex-wrap: wrap;
}
.source-name {
color: #666;
font-size: 12px;
font-weight: 500;
}
.rank-num {
color: #fff;
background: #6b7280;
font-size: 10px;
font-weight: 700;
padding: 2px 6px;
border-radius: 10px;
min-width: 18px;
text-align: center;
}
.rank-num.top { background: #dc2626; }
.rank-num.high { background: #ea580c; }
.time-info {
color: #999;
font-size: 11px;
}
.count-info {
color: #059669;
font-size: 11px;
font-weight: 500;
}
.news-title {
font-size: 15px;
line-height: 1.4;
color: #1a1a1a;
margin: 0;
}
.news-link {
color: #2563eb;
text-decoration: none;
}
.news-link:hover {
text-decoration: underline;
}
.news-link:visited {
color: #7c3aed;
}
.topic-trend-section {
margin-top: 40px;
padding-top: 24px;
border-top: 2px solid #f0f0f0;
}
.topic-trend-title {
color: #1a1a1a;
font-size: 16px;
font-weight: 600;
margin: 0 0 20px 0;
}
.viral-topic-item {
padding: 16px 0;
border-bottom: 1px solid #f5f5f5;
}
.viral-topic-item:last-child {
border-bottom: none;
}
.viral-topic-header {
display: flex;
align-items: center;
gap: 12px;
margin-bottom: 12px;
}
.viral-topic-keyword {
font-size: 16px;
font-weight: 600;
}
.topic-item {
display: flex;
align-items: center;
gap: 12px;
padding: 8px 0;
border-bottom: 1px solid #f9f9f9;
}
.topic-item:last-child {
border-bottom: none;
}
.viral-topic-stats {
font-size: 12px;
color: #666;
}
.viral-topic-stats .new { color: #dc2626; font-weight: bold; }
.viral-topic-stats .up { color: #f59e0b; font-weight: bold; }
.viral-topic-stats .level-high { color: #dc2626; font-weight: bold; }
.viral-topic-stats .level-mid { color: #f59e0b; font-weight: bold; }
.viral-sample-titles {
list-style: none;
padding-left: 16px;
margin: 0;
font-size: 13px;
}
.viral-sample-titles li {
color: #666;
padding: 4px 0;
position: relative;
}
.viral-sample-titles li::before { content: '▪'; position: absolute; left: -14px; color: #ccc; }
.new-section {
margin-top: 40px;
padding-top: 24px;
border-top: 2px solid #f0f0f0;
}
.new-section-title {
color: #1a1a1a;
font-size: 16px;
font-weight: 600;
margin: 0 0 20px 0;
}
.new-source-group {
margin-bottom: 24px;
}
.new-source-title {
color: #666;
font-size: 13px;
font-weight: 500;
margin: 0 0 12px 0;
padding-bottom: 6px;
border-bottom: 1px solid #f5f5f5;
}
.new-item {
display: flex;
align-items: center;
gap: 12px;
padding: 8px 0;
border-bottom: 1px solid #f9f9f9;
}
.new-item:last-child {
border-bottom: none;
}
.new-item-number {
color: #999;
font-size: 12px;
font-weight: 600;
min-width: 18px;
text-align: center;
flex-shrink: 0;
background: #f8f9fa;
border-radius: 50%;
width: 20px;
height: 20px;
display: flex;
align-items: center;
justify-content: center;
}
.new-item-rank {
color: #fff;
background: #6b7280;
font-size: 10px;
font-weight: 700;
padding: 3px 6px;
border-radius: 8px;
min-width: 20px;
text-align: center;
flex-shrink: 0;
}
.new-item-rank.top { background: #dc2626; }
.new-item-rank.high { background: #ea580c; }
.new-item-content {
flex: 1;
min-width: 0;
}
.new-item-title {
font-size: 14px;
line-height: 1.4;
color: #1a1a1a;
margin: 0;
}
.error-section {
background: #fef2f2;
border: 1px solid #fecaca;
border-radius: 8px;
padding: 16px;
margin-bottom: 24px;
}
.error-title {
color: #dc2626;
font-size: 14px;
font-weight: 600;
margin: 0 0 8px 0;
}
.error-list {
list-style: none;
padding: 0;
margin: 0;
}
.error-item {
color: #991b1b;
font-size: 13px;
padding: 2px 0;
font-family: 'SF Mono', Consolas, monospace;
}
.footer {
margin-top: 32px;
padding: 20px 24px;
background: #f8f9fa;
border-top: 1px solid #e5e7eb;
text-align: center;
}
.footer-content {
font-size: 13px;
color: #6b7280;
line-height: 1.6;
}
.footer-link {
color: #4f46e5;
text-decoration: none;
font-weight: 500;
transition: color 0.2s ease;
}
.footer-link:hover {
color: #7c3aed;
text-decoration: underline;
}
.project-name {
font-weight: 600;
color: #374151;
}
@media (max-width: 480px) {
body { padding: 12px; }
.header { padding: 24px 20px; }
.content { padding: 20px; }
.footer { padding: 16px 20px; }
.header-info { grid-template-columns: 1fr; gap: 12px; }
.news-header { gap: 6px; }
.news-content { padding-right: 45px; }
.news-item { gap: 8px; }
.new-item { gap: 8px; }
.news-number { width: 20px; height: 20px; font-size: 12px; }
.save-buttons {
position: static;
margin-bottom: 16px;
display: flex;
gap: 8px;
justify-content: center;
flex-direction: column;
width: 100%;
}
.save-btn {
width: 100%;
}
}
</style>
</head>
<body>
<div class="container">
<div class="header">
<div class="save-buttons">
<button class="save-btn" onclick="saveAsImage()">保存为图片</button>
<button class="save-btn" onclick="saveAsMultipleImages()">分段保存</button>
</div>
<div class="header-title">热点新闻分析</div>
<div class="header-info">
<div class="info-item">
<span class="info-label">报告类型</span>
<span class="info-value">实时分析</span>
</div>
<div class="info-item">
<span class="info-label">新闻总数</span>
<span class="info-value">255 条</span>
</div>
<div class="info-item">
<span class="info-label">热点新闻</span>
<span class="info-value">8 条</span>
</div>
<div class="info-item">
<span class="info-label">生成时间</span>
<span class="info-value">12-27 02:17</span>
</div>
</div>
</div>
<div class="content">
<div class="word-group">
<div class="word-header">
<div class="word-info">
<div class="word-name">ai 人工智能</div>
<div class="word-count ">4 条</div>
</div>
<div class="word-index">1/3</div>
</div>
<div class="news-item new">
<div class="news-number">1</div>
<div class="news-content">
<div class="news-header">
<span class="source-name">财联社热门</span><span class="rank-num ">7</span><span class="time-info">02时17分</span>
</div>
<div class="news-title"><a href="https://www.cls.cn/detail/2241363" target="_blank" class="news-link">华为:全球悬赏300万元解决AI时代的存储难题</a>
</div>
</div>
</div>
<div class="news-item new">
<div class="news-number">2</div>
<div class="news-content">
<div class="news-header">
<span class="source-name">百度热搜</span><span class="rank-num ">16</span><span class="time-info">02时17分</span>
</div>
<div class="news-title"><a href="https://www.baidu.com/s?wd=174%E5%90%8D%E5%8C%97%E5%A4%A7%E5%AD%A6%E7%94%9F%E8%BF%8E%E7%89%B9%E6%AE%8A%E8%80%83%E8%AF%95%EF%BC%9A%E5%AF%B9%E5%86%B3AI" target="_blank" class="news-link">174名北大学生迎特殊考试:对决AI</a>
</div>
</div>
</div>
<div class="news-item new">
<div class="news-number">3</div>
<div class="news-content">
<div class="news-header">
<span class="source-name">bilibili 热搜</span><span class="rank-num ">20</span><span class="time-info">02时17分</span>
</div>
<div class="news-title"><a href="https://search.bilibili.com/all?keyword=AI%E9%9F%B3%E4%B9%90MV%E7%BB%A9%E6%95%88%E6%94%B9%E8%BF%9B%E8%AE%A1%E5%88%92" target="_blank" class="news-link">AI音乐MV绩效改进计划</a>
</div>
</div>
</div>
<div class="news-item new">
<div class="news-number">4</div>
<div class="news-content">
<div class="news-header">
<span class="source-name">bilibili 热搜</span><span class="rank-num ">23</span><span class="time-info">02时17分</span>
</div>
<div class="news-title"><a href="https://search.bilibili.com/all?keyword=2025%E5%B9%B4%E5%BA%A6AI%E5%A5%BD%E7%94%A8%E5%B7%A5%E5%85%B7" target="_blank" class="news-link">2025年度AI好用工具</a>
</div>
</div>
</div>
</div>
<div class="word-group">
<div class="word-header">
<div class="word-info">
<div class="word-name">股票 A股 上证 深证</div>
<div class="word-count ">2 条</div>
</div>
<div class="word-index">2/3</div>
</div>
<div class="news-item new">
<div class="news-number">1</div>
<div class="news-content">
<div class="news-header">
<span class="source-name">财联社热门</span><span class="rank-num top">2</span><span class="time-info">02时17分</span>
</div>
<div class="news-title"><a href="https://www.cls.cn/detail/2241471" target="_blank" class="news-link">央行报告:着力健全有利于“长钱长投”的制度政策环境 显著提高各类中长期资金实际投资A股的规模和比例</a>
</div>
</div>
</div>
<div class="news-item new">
<div class="news-number">2</div>
<div class="news-content">
<div class="news-header">
<span class="source-name">华尔街见闻</span><span class="rank-num ">8</span><span class="time-info">02时17分</span>
</div>
<div class="news-title"><a href="https://wallstreetcn.com/articles/3762115" target="_blank" class="news-link">A股三大指数再度翻红,贵金属、有色全线大涨,锂矿强势,国投白银LOF再次跌停,商业航天活跃,算力硬件领跌</a>
</div>
</div>
</div>
</div>
<div class="word-group">
<div class="word-header">
<div class="word-info">
<div class="word-name">航天 飞船 航空</div>
<div class="word-count ">2 条</div>
</div>
<div class="word-index">3/3</div>
</div>
<div class="news-item new">
<div class="news-number">1</div>
<div class="news-content">
<div class="news-header">
<span class="source-name">财联社热门</span><span class="rank-num high">4</span><span class="time-info">02时17分</span>
</div>
<div class="news-title"><a href="https://www.cls.cn/detail/2241189" target="_blank" class="news-link">【数据看盘】机构豪掷4.82亿买入航天发展 多路资金联手抢筹德明利</a>
</div>
</div>
</div>
<div class="news-item new">
<div class="news-number">2</div>
<div class="news-content">
<div class="news-header">
<span class="source-name">今日头条</span><span class="rank-num ">29</span><span class="time-info">02时17分</span>
</div>
<div class="news-title"><a href="https://www.toutiao.com/trending/7588105705421278747/" target="_blank" class="news-link">为何中国卫星成了商业航天的龙头</a>
</div>
</div>
</div>
</div>
<div class="topic-trend-section">
<div class="topic-trend-title">🔥 异常热度话题</div>
<div class="viral-topic-item">
<div class="viral-topic-header">
<div class="viral-topic-keyword">长安二十四计</div>
<div class="viral-topic-stats">
3条提及 · <span class="up">↑3%</span> · <span class="level-mid">中热度</span>
</div>
</div>
<ul class="viral-sample-titles"><li>《长安二十四计》为何值得一看</li><li>《长安二十四计》大结局</li><li>长安二十四计 第二季</li></ul></div>
<div class="viral-topic-item">
<div class="viral-topic-header">
<div class="viral-topic-keyword">为什么</div>
<div class="viral-topic-stats">
3条提及 · <span class="up">↑3%</span> · <span class="level-mid">中热度</span>
</div>
</div>
<ul class="viral-sample-titles"><li>为什么《喜羊羊与灰太狼》与《猫和老鼠》有截然不同的口碑?</li><li>如果只能用一个词来形容人和 AI 的区别以及人类的不可代替之处,你会选哪个词?为什么?</li><li>回顾今年,你认为在有限资源里,最值得长期坚持的一项养育投入是什么?为什么?</li></ul></div></div>
<div class="topic-trend-section">
<div class="topic-trend-title">✨ 关注话题趋势</div>
<div class="word-group">
<div class="word-header">
<div class="word-info">
<div class="word-name">自动驾驶</div>
<div class="word-count">11 条提及 <span style="color: #059669;">(↓100.00%)</span></div>
</div>
</div>
<div class="news-item">
<div class="news-content" style="padding-right: 0;">
<img src="data:image/png;base64,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" alt="自动驾驶 趋势图" style="width: 100%; height: auto;" />
</div>
</div>
</div></div>
</div>
<div class="footer">
<div class="footer-content">
</div>
</div>
</div>
<script>
async function saveAsImage() {
const button = event.target;
const originalText = button.textContent;
try {
button.textContent = '生成中...';
button.disabled = true;
window.scrollTo(0, 0);
// 等待页面稳定
await new Promise(resolve => setTimeout(resolve, 200));
// 截图前隐藏按钮
const buttons = document.querySelector('.save-buttons');
buttons.style.visibility = 'hidden';
// 再次等待确保按钮完全隐藏
await new Promise(resolve => setTimeout(resolve, 100));
const container = document.querySelector('.container');
const canvas = await html2canvas(container, {
backgroundColor: '#ffffff',
scale: 1.5,
useCORS: true,
allowTaint: false,
imageTimeout: 10000,
removeContainer: false,
foreignObjectRendering: false,
logging: false,
width: container.offsetWidth,
height: container.offsetHeight,
x: 0,
y: 0,
scrollX: 0,
scrollY: 0,
windowWidth: window.innerWidth,
windowHeight: window.innerHeight
});
buttons.style.visibility = 'visible';
const link = document.createElement('a');
const now = new Date();
const filename = `TrendRadar_热点新闻分析_${now.getFullYear()}${String(now.getMonth() + 1).padStart(2, '0')}${String(now.getDate()).padStart(2, '0')}_${String(now.getHours()).padStart(2, '0')}${String(now.getMinutes()).padStart(2, '0')}.png`;
link.download = filename;
link.href = canvas.toDataURL('image/png', 1.0);
// 触发下载
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
button.textContent = '保存成功!';
setTimeout(() => {
button.textContent = originalText;
button.disabled = false;
}, 2000);
} catch (error) {
const buttons = document.querySelector('.save-buttons');
buttons.style.visibility = 'visible';
button.textContent = '保存失败';
setTimeout(() => {
button.textContent = originalText;
button.disabled = false;
}, 2000);
}
}
async function saveAsMultipleImages() {
const button = event.target;
const originalText = button.textContent;
const container = document.querySelector('.container');
const scale = 1.5;
const maxHeight = 5000 / scale;
try {
button.textContent = '分析中...';
button.disabled = true;
// 获取所有可能的分割元素
const newsItems = Array.from(container.querySelectorAll('.news-item'));
const wordGroups = Array.from(container.querySelectorAll('.word-group'));
const newSection = container.querySelector('.new-section');
const errorSection = container.querySelector('.error-section');
const header = container.querySelector('.header');
const footer = container.querySelector('.footer');
// 计算元素位置和高度
const containerRect = container.getBoundingClientRect();
const elements = [];
// 添加header作为必须包含的元素
elements.push({
type: 'header',
element: header,
top: 0,
bottom: header.offsetHeight,
height: header.offsetHeight
});
// 添加错误信息(如果存在)
if (errorSection) {
const rect = errorSection.getBoundingClientRect();
elements.push({
type: 'error',
element: errorSection,
top: rect.top - containerRect.top,
bottom: rect.bottom - containerRect.top,
height: rect.height
});
}
// 按word-group分组处理news-item
wordGroups.forEach(group => {
const groupRect = group.getBoundingClientRect();
const groupNewsItems = group.querySelectorAll('.news-item');
// 添加word-group的header部分
const wordHeader = group.querySelector('.word-header');
if (wordHeader) {
const headerRect = wordHeader.getBoundingClientRect();
elements.push({
type: 'word-header',
element: wordHeader,
parent: group,
top: groupRect.top - containerRect.top,
bottom: headerRect.bottom - containerRect.top,
height: headerRect.height
});
}
// 添加每个news-item
groupNewsItems.forEach(item => {
const rect = item.getBoundingClientRect();
elements.push({
type: 'news-item',
element: item,
parent: group,
top: rect.top - containerRect.top,
bottom: rect.bottom - containerRect.top,
height: rect.height
});
});
});
// 添加新增新闻部分
if (newSection) {
const rect = newSection.getBoundingClientRect();
elements.push({
type: 'new-section',
element: newSection,
top: rect.top - containerRect.top,
bottom: rect.bottom - containerRect.top,
height: rect.height
});
}
// 添加footer
const footerRect = footer.getBoundingClientRect();
elements.push({
type: 'footer',
element: footer,
top: footerRect.top - containerRect.top,
bottom: footerRect.bottom - containerRect.top,
height: footer.offsetHeight
});
// 计算分割点
const segments = [];
let currentSegment = { start: 0, end: 0, height: 0, includeHeader: true };
let headerHeight = header.offsetHeight;
currentSegment.height = headerHeight;
for (let i = 1; i < elements.length; i++) {
const element = elements[i];
const potentialHeight = element.bottom - currentSegment.start;
// 检查是否需要创建新分段
if (potentialHeight > maxHeight && currentSegment.height > headerHeight) {
// 在前一个元素结束处分割
currentSegment.end = elements[i - 1].bottom;
segments.push(currentSegment);
// 开始新分段
currentSegment = {
start: currentSegment.end,
end: 0,
height: element.bottom - currentSegment.end,
includeHeader: false
};
} else {
currentSegment.height = potentialHeight;
currentSegment.end = element.bottom;
}
}
// 添加最后一个分段
if (currentSegment.height > 0) {
currentSegment.end = container.offsetHeight;
segments.push(currentSegment);
}
button.textContent = `生成中 (0/${segments.length})...`;
// 隐藏保存按钮
const buttons = document.querySelector('.save-buttons');
buttons.style.visibility = 'hidden';
// 为每个分段生成图片
const images = [];
for (let i = 0; i < segments.length; i++) {
const segment = segments[i];
button.textContent = `生成中 (${i + 1}/${segments.length})...`;
// 创建临时容器用于截图
const tempContainer = document.createElement('div');
tempContainer.style.cssText = `
position: absolute;
left: -9999px;
top: 0;
width: ${container.offsetWidth}px;
background: white;
`;
tempContainer.className = 'container';
// 克隆容器内容
const clonedContainer = container.cloneNode(true);
// 移除克隆内容中的保存按钮
const clonedButtons = clonedContainer.querySelector('.save-buttons');
if (clonedButtons) {
clonedButtons.style.display = 'none';
}
tempContainer.appendChild(clonedContainer);
document.body.appendChild(tempContainer);
// 等待DOM更新
await new Promise(resolve => setTimeout(resolve, 100));
// 使用html2canvas截取特定区域
const canvas = await html2canvas(clonedContainer, {
backgroundColor: '#ffffff',
scale: scale,
useCORS: true,
allowTaint: false,
imageTimeout: 10000,
logging: false,
width: container.offsetWidth,
height: segment.end - segment.start,
x: 0,
y: segment.start,
windowWidth: window.innerWidth,
windowHeight: window.innerHeight
});
images.push(canvas.toDataURL('image/png', 1.0));
// 清理临时容器
document.body.removeChild(tempContainer);
}
// 恢复按钮显示
buttons.style.visibility = 'visible';
// 下载所有图片
const now = new Date();
const baseFilename = `TrendRadar_热点新闻分析_${now.getFullYear()}${String(now.getMonth() + 1).padStart(2, '0')}${String(now.getDate()).padStart(2, '0')}_${String(now.getHours()).padStart(2, '0')}${String(now.getMinutes()).padStart(2, '0')}`;
for (let i = 0; i < images.length; i++) {
const link = document.createElement('a');
link.download = `${baseFilename}_part${i + 1}.png`;
link.href = images[i];
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
// 延迟一下避免浏览器阻止多个下载
await new Promise(resolve => setTimeout(resolve, 100));
}
button.textContent = `已保存 ${segments.length} 张图片!`;
setTimeout(() => {
button.textContent = originalText;
button.disabled = false;
}, 2000);
} catch (error) {
console.error('分段保存失败:', error);
const buttons = document.querySelector('.save-buttons');
buttons.style.visibility = 'visible';
button.textContent = '保存失败';
setTimeout(() => {
button.textContent = originalText;
button.disabled = false;
}, 2000);
}
}
document.addEventListener('DOMContentLoaded', function() {
window.scrollTo(0, 0);
});
</script>
</body>
</html>