На моем веб-сайте у меня работает тумблер темного режима, и я сохранил его в localStorage, чтобы при перемещении по сайту между страницами запоминался темный режим. Однако всякий раз, когда я переключаю страницы, старая тема загружается в течение очень короткого момента (0,5 с), а затем загружается темный режим. Я хотел, чтобы темный режим был плавным и оставался между страницами.
Каждый раз, когда пользователь переходит на другую страницу, у меня есть функция initTheme (), которая корректирует тему в соответствии с переменной localStorage. Как сделать так, чтобы при переключении страниц пользователи загружали темную нагрузку?
function initTheme() {
var darkThemeSelected =
localStorage.getItem("darkSwitch") !== null &&
localStorage.getItem("darkSwitch") === "dark";
darkThemeSelected
? document.body.setAttribute("data-theme", "dark")
: document.body.removeAttribute("data-theme");
if (darkThemeSelected){
document.getElementById("darkModeText").innerHTML=`Turn Lights On`;
document.getElementById("darkModeIcon").className="zmdi zmdi-brightness-5";
}
else {
document.getElementById("darkModeText").innerHTML=`Turn Lights Off`;
document.getElementById("darkModeIcon").className="zmdi zmdi-brightness-3";
}
}