feat: 切周期加载中提示(#load-hint独立条,不破坏strategyList旧内容/滚动)

This commit is contained in:
xxm
2026-08-18 08:32:36 +08:00
parent 38c84ad35f
commit f53cfcd76b
+6
View File
@@ -2201,6 +2201,7 @@ function renderResearch() {
'<select id="btMarket" class="bg-slate-800 text-sm rounded-lg px-2 py-1 border border-slate-700" onchange="loadStrategyList()">' +
'<option value="all">全部市场</option><option value="a">A股</option><option value="hk">港股</option></select>' +
'<span class="text-xs text-slate-500">每版策略基于上一版归因分析迭代 · 点击行展开明细</span></div>' +
'<div id="load-hint" class="hidden text-slate-400 text-sm py-2 px-2 animate-pulse"></div>' +
'<div id="strategyList"><div class="text-slate-500 text-sm">加载中...</div></div>' +
'<div id="strategyDetail" class="mt-4"></div>' +
'</div>' +
@@ -2259,6 +2260,9 @@ function saveBtPeriod() {
async function loadStrategyList() {
window._stratScrollY = window.scrollY || 0; // 2026-08-18 触发渲染前保存滚动位置
const listEl = document.getElementById('strategyList');
// 2026-08-18 加载中提示(独立提示条,不破坏 strategyList 旧内容/滚动)
const hintEl = document.getElementById('load-hint');
if (hintEl) { hintEl.textContent = '⏳ 加载中...'; hintEl.classList.remove('hidden'); }
try {
const ptMap = {'1m':'1m','6m':'6m','1y':'1y','2y':'2y','5y':'5y','10y':'10y'};
const pt = ptMap[window._btPeriodVal || document.getElementById('btPeriod')?.value || '2y'] || '2y';
@@ -2294,8 +2298,10 @@ async function loadStrategyList() {
}
}
renderStrategyTable(strats);
if (hintEl) hintEl.classList.add('hidden');
} catch(e) {
listEl.innerHTML = '<div class="text-red-400">加载失败: ' + e.message + '</div>';
if (hintEl) { hintEl.textContent = '⚠️ 加载失败'; hintEl.classList.remove('hidden'); }
}
}