nxxy335
a65ec682ce
fix: 修复点击设置报 Cannot set properties of null (setting 'textContent')
根因:#fullScoresHint 是 #fullScoresBox 的子元素,而 renderFullScores()
用 box.innerHTML 渲染试卷列表时会把它销毁,紧接着的
$('#fullScoresHint').textContent = ... 即变成 null.textContent 抛错。
只要 state.projects 非空(连上卷王、有可答卷)点设置必触发;
projects 为空时走 early return 反而不报错,故此前长期潜伏未被发现
(自 8686eb9 设置重构引入)。
修复:
- index.php:把 #fullScoresHint 移出 #fullScoresBox,改为兄弟元素,
并加注释说明为何不能放回去
- assets/app.js:新增 setFullScoresHint() 带 null 守卫,三个分支统一走它;
即使将来 DOM 结构再变动也不会让整个设置弹窗打不开
2026-09-10 12:50:39 +08:00
..
2026-09-10 12:50:39 +08:00
2026-09-10 12:30:00 +08:00
2026-09-10 12:30:00 +08:00