优化 afterbody.js:修复变量遮蔽、移除死代码、提取 slice 常量
This commit is contained in:
@@ -1,19 +1,7 @@
|
||||
//公式相关
|
||||
|
||||
function toggleAccordion(header) {
|
||||
const content = header.nextElementSibling;
|
||||
const isOpen = content.style.maxHeight !== '0px' && content.style.maxHeight !== '';
|
||||
|
||||
// 关闭所有其他面板
|
||||
document.querySelectorAll('.accordion-content').forEach(item => {
|
||||
item.style.maxHeight = '0px';
|
||||
});
|
||||
|
||||
// 切换当前面板
|
||||
if (!isOpen) {
|
||||
content.style.maxHeight = content.scrollHeight + 'px';
|
||||
}
|
||||
}
|
||||
const BASE_WIND_COUNT = 10;
|
||||
const SPOT_CHECK_COUNT = 5;
|
||||
|
||||
// 展开或者关闭公式
|
||||
function toggleFormula(element) {
|
||||
@@ -36,11 +24,7 @@ document.addEventListener('DOMContentLoaded', function() {
|
||||
|
||||
// 确保数据已加载
|
||||
if (window.weatherData) {
|
||||
// 获取页面中的版本号元素
|
||||
const versionElement = document.querySelector('.version');
|
||||
|
||||
// 【修改点】直接使用 window.weatherData.version
|
||||
// 使用 || 'v1.0' 作为默认值,防止数据库版本为空时显示 undefined
|
||||
const dbVersion = window.weatherData.version || 'default';
|
||||
|
||||
// 更新页面显示
|
||||
@@ -48,7 +32,6 @@ document.addEventListener('DOMContentLoaded', function() {
|
||||
versionElement.textContent = `版本号: ${dbVersion}`;
|
||||
}
|
||||
|
||||
// 【修改点】调用 downloadpdf,只传 data,不再传那个空的 version 变量
|
||||
downloadpdf(window.weatherData);
|
||||
} else {
|
||||
console.error("错误:window.weatherData 未定义");
|
||||
@@ -63,8 +46,7 @@ function downloadpdf(data) {
|
||||
rural: "农村",
|
||||
};
|
||||
|
||||
// 假设你的HTML字符串是这样的
|
||||
var htmlString = `
|
||||
const htmlString = `
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-CN">
|
||||
<head>
|
||||
@@ -252,38 +234,35 @@ function downloadpdf(data) {
|
||||
<div class="data-row-long">
|
||||
<div class="data-label">十次风速值:</div>
|
||||
<div class="data-value">
|
||||
<!-- 截取前10项,确保无抽测时显示全部,有抽测时只显示基础10项 -->
|
||||
<div class="ten-values">${data.windSpeed.slice(0, 10).join(',')}</div>
|
||||
<div class="ten-values">${data.windSpeed.slice(0, BASE_WIND_COUNT).join(',')}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="data-row-long">
|
||||
<div class="data-label">十次风向值:</div>
|
||||
<div class="data-value">
|
||||
<div class="ten-values">${data.windDirection.slice(0, 10).join(',')}</div>
|
||||
<div class="ten-values">${data.windDirection.slice(0, BASE_WIND_COUNT).join(',')}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 新增:仅当有抽测时显示,展示后5项抽测数据 -->
|
||||
${data.hasSpotCheckWindSpeed ? `
|
||||
<div class="data-grid" style="margin-top: 16px;"> <!-- 加间距区分基础数据与抽测数据 -->
|
||||
<div class="data-grid" style="margin-top: 16px;">
|
||||
<div class="data-row-long">
|
||||
<div class="data-label">抽测风速值:</div>
|
||||
<div class="data-value">
|
||||
<!-- 截取后5项(索引10-14),用空字符串处理可能的null -->
|
||||
<div class="ten-values">${data.windSpeed.slice(10, 15).map(val => val ?? '').join(',')}</div>
|
||||
<div class="ten-values">${data.windSpeed.slice(BASE_WIND_COUNT, BASE_WIND_COUNT + SPOT_CHECK_COUNT).map(val => val ?? '').join(',')}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="data-row-long">
|
||||
<div class="data-label">抽测风向值:</div>
|
||||
<div class="data-value">
|
||||
<div class="ten-values">${data.windDirection.slice(10, 15).map(val => val ?? '').join(',')}</div>
|
||||
<div class="ten-values">${data.windDirection.slice(BASE_WIND_COUNT, BASE_WIND_COUNT + SPOT_CHECK_COUNT).map(val => val ?? '').join(',')}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
` : ''}
|
||||
|
||||
<!-- 修复字段名拼写(原hasspotwindspeed改为正确的hasSpotCheckWindSpeed) -->
|
||||
<div class="data-row-long">
|
||||
<div class="data-label">是否有抽测风速:${data.hasSpotCheckWindSpeed ? '是' : '否'}</div>
|
||||
</div>
|
||||
@@ -357,12 +336,11 @@ ${data.hasSpotCheckWindSpeed ? `
|
||||
|
||||
// 函数用于将日期格式化为 xxxx-xx-xx 形式
|
||||
function formatDateToYYYYMMDD(date) {
|
||||
// 使用Date对象解析这个日期字符串
|
||||
var date = new Date(date);
|
||||
var year = date.getFullYear(); // 获取年份
|
||||
var month = (date.getMonth() + 1).toString().padStart(2, '0'); // 获取月份,并确保两位数
|
||||
var day = date.getDate().toString().padStart(2, '0'); // 获取日期,并确保两位数
|
||||
return year + '-' + month + '-' + day; // 组合成 xxxx-xx-xx 形式
|
||||
const parsed = new Date(date);
|
||||
const year = parsed.getFullYear();
|
||||
const month = (parsed.getMonth() + 1).toString().padStart(2, '0');
|
||||
const day = parsed.getDate().toString().padStart(2, '0');
|
||||
return year + '-' + month + '-' + day;
|
||||
}
|
||||
|
||||
//稳定度描述映射
|
||||
|
||||
Reference in New Issue
Block a user