diff --git a/themes/Ying/assets/js/modules/artalk.js b/themes/Ying/assets/js/modules/artalk.js index 3a200a0d..a459c65e 100644 --- a/themes/Ying/assets/js/modules/artalk.js +++ b/themes/Ying/assets/js/modules/artalk.js @@ -67,6 +67,12 @@ window.initArtalk = function() { var artalk = window.artalk; // Local reference + // Sync Theme Mode Immediately + var currentTheme = document.documentElement.getAttribute('data-theme'); + if (typeof artalk.setDarkMode === 'function') { + artalk.setDarkMode(currentTheme === 'dark'); + } + // Aggressive Config Saving Strategy var saveConf = function() { try { diff --git a/themes/Ying/assets/js/modules/utils.js b/themes/Ying/assets/js/modules/utils.js index a73926f4..6881a4f9 100644 --- a/themes/Ying/assets/js/modules/utils.js +++ b/themes/Ying/assets/js/modules/utils.js @@ -81,6 +81,11 @@ window.initThemeToggle = function() { localStorage.setItem('theme', newTheme); window.showToast('已切换至 ' + (newTheme === 'dark' ? '深色' : '浅色') + '模式', 'success'); + + // Sync Artalk Theme + if (window.artalk && typeof window.artalk.setDarkMode === 'function') { + window.artalk.setDarkMode(newTheme === 'dark'); + } // Trigger generic resize event to force charts/etc to redraw if needed window.dispatchEvent(new Event('resize'));