h5链接替换-文件替换

This commit is contained in:
2026-01-27 14:33:22 +08:00
parent 534ef90f2e
commit 60445b1523

View File

@@ -694,15 +694,117 @@
transform: translateY(0);
}
/* 返回按钮 */
.back-btn {
position: fixed;
top: 20px;
left: 20px;
z-index: 1000;
width: 44px;
height: 44px;
border-radius: 50%;
background: rgba(0, 100, 150, 0.3);
border: 1px solid rgba(0, 200, 255, 0.3);
color: #00d4ff;
font-size: 1.2em;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
transition: all 0.3s;
backdrop-filter: blur(10px);
}
.back-btn:hover {
background: rgba(0, 150, 200, 0.4);
transform: scale(1.1);
box-shadow: 0 0 20px rgba(0, 200, 255, 0.4);
}
.back-btn:active {
transform: scale(0.95);
}
/* 响应式 */
@media (max-width: 768px) {
.cover-year { font-size: 4em; }
.cover-title { font-size: 1.5em; letter-spacing: 8px; }
.big-stat-number { font-size: 4em; }
.podium { flex-direction: column; align-items: center; }
.cover-subtitle { font-size: 1em; }
.big-stat-number { font-size: 3em; }
.big-stat-unit { font-size: 1.2em; }
.big-stat-desc { font-size: 0.95em; }
.section-title { font-size: 1.5em; }
.section-label { font-size: 0.8em; }
/* 领奖台适配 */
.podium { flex-direction: column; align-items: center; gap: 15px; }
.podium-item:nth-child(2) { order: -1; }
.podium-bar { height: 60px !important; width: 80px !important; }
.podium-item:nth-child(2) .podium-bar { height: 80px !important; width: 100px !important; }
.podium-avatar { width: 60px; height: 60px; font-size: 1.5em; }
.podium-item:nth-child(2) .podium-avatar { width: 80px; height: 80px; font-size: 2em; }
.podium-name { font-size: 1em; }
.podium-value { font-size: 1.1em; }
/* 环形图适配 */
.donut-container { gap: 20px; }
.donut-ring { width: 100px; height: 100px; }
.donut-value { font-size: 1.3em; }
.donut-label { font-size: 0.9em; }
.donut-count { font-size: 0.8em; }
/* 时间卡片适配 */
.time-card { padding: 25px; max-width: 90%; }
.time-value { font-size: 2.5em; }
.time-icon { font-size: 3em; }
.time-desc { font-size: 1em; }
/* 柱状图适配 */
.bar-chart { max-width: 90%; }
.bar-label { width: 50px; font-size: 0.85em; }
.bar-fill { font-size: 0.75em; padding-right: 10px; }
/* 警示卡片适配 */
.alert-grid { gap: 20px; }
.alert-card { padding: 20px; min-width: auto; }
.alert-icon { font-size: 2em; }
.alert-value { font-size: 1.8em; }
.alert-title { font-size: 0.9em; }
/* APP使用率适配 */
.app-usage-card { padding: 30px 40px; }
.app-usage-value { font-size: 3.5em; }
.app-usage-icon { font-size: 3em; }
.app-usage-desc { font-size: 1em; }
/* 对比卡片适配 */
.compare-container { gap: 20px; }
.compare-card { padding: 25px; min-width: 250px; }
.compare-region { font-size: 2em; }
.compare-value { font-size: 2.5em; }
/* 结尾适配 */
.ending-text { font-size: 1.5em; }
.ending-year { font-size: 1.3em; }
.ending-wish { font-size: 1em; }
.nav-dots { display: none; }
.section { padding: 60px 20px; }
.section { padding: 50px 15px; }
.back-btn { top: 15px; left: 15px; width: 40px; height: 40px; }
}
/* 更小屏幕适配 */
@media (max-width: 375px) {
.cover-year { font-size: 3em; }
.cover-title { font-size: 1.2em; letter-spacing: 5px; }
.big-stat-number { font-size: 2.5em; }
.section-title { font-size: 1.3em; }
.donut-ring { width: 85px; height: 85px; }
.donut-value { font-size: 1.1em; }
.time-value { font-size: 2em; }
.app-usage-value { font-size: 2.8em; }
.app-usage-card { padding: 25px 30px; }
.alert-value { font-size: 1.5em; }
}
/* 横向柱状图 */
@@ -817,6 +919,11 @@
<p id="errorMessage"></p>
</div>
<!-- 返回按钮 -->
<button class="back-btn" id="backBtn" onclick="goBack()" title="返回">
</button>
<!-- 主内容 -->
<div id="mainContent" style="display: none;">
<!-- 粒子背景 -->
@@ -954,7 +1061,6 @@
// 获取URL参数
function getProviderIdFromUrl() {
const urlParams = new URLSearchParams(window.location.search);
// return urlParams.get('providerId') || null;
let providerId = urlParams.get('providerId');
// 处理URL格式错误的情况如 ?providerId=33041?token=xxx第二个?应该是&
if (providerId && providerId.includes('?')) {
@@ -1423,6 +1529,16 @@
});
}
// 返回按钮功能
function goBack() {
if (window.history.length > 1) {
window.history.back();
} else {
// 如果没有历史记录,关闭窗口或跳转到默认页面
window.close();
}
}
// 初始化
document.addEventListener('DOMContentLoaded', () => {
loadAllExcelData();