From ab31befdf5c5ebe432a675b7d0203020d0fa7f87 Mon Sep 17 00:00:00 2001 From: Zuoling Rong Date: Sat, 3 May 2025 23:37:03 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=90=9C=E7=B4=A2=E5=8A=9F?= =?UTF-8?q?=E8=83=BD=E4=B8=AD=E7=9A=84=E5=8F=98=E9=87=8F=E4=BD=9C=E7=94=A8?= =?UTF-8?q?=E5=9F=9F=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 将局部变量pages改为全局变量,解决搜索时"pages is not defined"的错误 --- src/script.js | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/script.js b/src/script.js index b5ee232..1c9c303 100644 --- a/src/script.js +++ b/src/script.js @@ -7,6 +7,7 @@ document.addEventListener('DOMContentLoaded', () => { let isSearchOpen = false; let isLightTheme = false; // 主题状态 let isSidebarCollapsed = false; // 侧边栏折叠状态 + let pages; // 页面元素的全局引用 // 搜索索引,用于提高搜索效率 let searchIndex = { @@ -135,7 +136,10 @@ document.addEventListener('DOMContentLoaded', () => { try { // 为每个页面创建索引 - const pages = document.querySelectorAll('.page'); + if (!pages) { + pages = document.querySelectorAll('.page'); + } + pages.forEach(page => { if (page.id === 'search-results') return; @@ -239,7 +243,10 @@ document.addEventListener('DOMContentLoaded', () => { // 使用 RAF 确保动画流畅 requestAnimationFrame(() => { - const pages = document.querySelectorAll('.page'); + if (!pages) { + pages = document.querySelectorAll('.page'); + } + pages.forEach(page => { const shouldBeActive = page.id === pageId; if (shouldBeActive !== page.classList.contains('active')) { @@ -582,7 +589,7 @@ document.addEventListener('DOMContentLoaded', () => { const navItems = document.querySelectorAll('.nav-item'); const navItemWrappers = document.querySelectorAll('.nav-item-wrapper'); const submenuItems = document.querySelectorAll('.submenu-item'); - const pages = document.querySelectorAll('.page'); + pages = document.querySelectorAll('.page'); // 初始化主题 initTheme();