fix: 修复页面内存泄漏问题

- 移除 initThemeTransition 中的 MutationObserver(会导致无限循环)
- 移除 will-change 属性(大量元素使用会占用过多内存)
- 主题切换过渡效果已在 setDarkmode() 函数中实现,无需重复
This commit is contained in:
2026-01-16 10:04:29 +08:00
parent 760a3adaa9
commit b613e019df
2 changed files with 3 additions and 13 deletions

View File

@@ -3710,18 +3710,10 @@ void 0;
});
}
// 7. 主题切换动画
// 7. 主题切换动画 - 已在 header.php 中通过 setDarkmode 函数处理,此处不再重复
function initThemeTransition() {
var observer = new MutationObserver(function(mutations) {
mutations.forEach(function(mutation) {
if (mutation.attributeName === 'class') {
var html = document.documentElement;
html.classList.add('theme-transitioning');
setTimeout(function() { html.classList.remove('theme-transitioning'); }, 300);
}
});
});
observer.observe(document.documentElement, { attributes: true, attributeFilter: ['class'] });
// 移除 MutationObserver 避免无限循环导致内存泄漏
// 主题切换过渡效果已在 setDarkmode() 函数中实现
}
// 8. 减少动画偏好检测