修复无法保存数据的错误

This commit is contained in:
CN-JS-HuiBai
2026-04-11 00:06:18 +08:00
parent e373e1ce62
commit 1826d4e34a

View File

@@ -285,43 +285,44 @@
dom.btnCancelEditRoute.onclick = cancelEditRoute; dom.btnCancelEditRoute.onclick = cancelEditRoute;
} }
dom.settingsModal.addEventListener('click', (e) => {
if (e.target === dom.settingsModal) closeSettings();
});
dom.btnTest.addEventListener('click', testConnection);
dom.btnAdd.addEventListener('click', addSource);
// Auth & Theme listeners // Auth & Theme listeners
dom.themeToggle.addEventListener('change', toggleTheme); if (dom.themeToggle) dom.themeToggle.addEventListener('change', toggleTheme);
if (dom.btnSettings) dom.btnSettings.addEventListener('click', openSettings);
// System Theme Listener (Real-time) if (dom.modalClose) dom.modalClose.addEventListener('click', closeSettings);
const systemThemeMedia = window.matchMedia('(prefers-color-scheme: light)'); if (dom.btnTest) dom.btnTest.addEventListener('click', testConnection);
if (systemThemeMedia.addEventListener) { if (dom.btnAdd) dom.btnAdd.addEventListener('click', addSource);
systemThemeMedia.addEventListener('change', () => { if (dom.btnRefreshNetwork) dom.btnRefreshNetwork.addEventListener('click', fetchNetworkHistory);
const savedTheme = localStorage.getItem('theme') || (window.SITE_SETTINGS && window.SITE_SETTINGS.default_theme) || 'dark';
if (savedTheme === 'auto') { // Auth & Login
applyTheme('auto'); if (dom.btnLogin) dom.btnLogin.addEventListener('click', openLoginModal);
} if (dom.closeLoginModal) dom.closeLoginModal.addEventListener('click', closeLoginModal);
if (dom.loginForm) dom.loginForm.addEventListener('submit', handleLogin);
if (dom.loginModal) {
dom.loginModal.addEventListener('click', (e) => {
if (e.target === dom.loginModal) closeLoginModal();
}); });
} }
dom.btnLogin.addEventListener('click', openLoginModal);
dom.closeLoginModal.addEventListener('click', closeLoginModal);
dom.loginForm.addEventListener('submit', handleLogin);
dom.loginModal.addEventListener('click', (e) => {
if (e.target === dom.loginModal) closeLoginModal();
});
// Tab switching // Tab switching
dom.modalTabs.forEach(tab => { if (dom.modalTabs) {
tab.addEventListener('click', () => { dom.modalTabs.forEach(tab => {
const targetTab = tab.getAttribute('data-tab'); tab.addEventListener('click', () => {
switchTab(targetTab); const targetTab = tab.getAttribute('data-tab');
switchTab(targetTab);
});
}); });
}); }
// Site settings // Site settings
dom.btnSaveSiteSettings.addEventListener('click', saveSiteSettings); if (dom.btnSaveSiteSettings) {
dom.btnAddRoute.addEventListener('click', addLatencyRoute); dom.btnSaveSiteSettings.addEventListener('click', saveSiteSettings);
}
if (dom.btnSaveCustomMetrics) {
dom.btnSaveCustomMetrics.onclick = saveSiteSettings;
}
if (dom.btnAddRoute) {
dom.btnAddRoute.addEventListener('click', addLatencyRoute);
}
// Auth password change // Auth password change
if (dom.btnChangePassword) { if (dom.btnChangePassword) {