44 lines
1.3 KiB
JavaScript
44 lines
1.3 KiB
JavaScript
|
function changeTab(selected){
|
||
|
let selectElement = document.getElementById(selected);
|
||
|
if (!selectElement.classList.contains('active')) {
|
||
|
let tabContList = document.getElementsByClassName('tab-content active');
|
||
|
let tabBtnList = document.getElementsByClassName('tab-button active');
|
||
|
let selectTabBtn = document.getElementById(`${selected}-tab`);
|
||
|
|
||
|
if (tabContList[0]) {
|
||
|
tabContList[0].classList.remove('active');
|
||
|
tabBtnList[0].classList.remove('active');
|
||
|
}
|
||
|
selectElement.classList.add('active');
|
||
|
selectTabBtn.classList.add('active');
|
||
|
};
|
||
|
};
|
||
|
|
||
|
//theme
|
||
|
function applyTheme(theme) {
|
||
|
document.body.classList.remove("theme-auto", "theme-light", "theme-dark");
|
||
|
document.body.classList.add(`theme-${theme}`);
|
||
|
}
|
||
|
|
||
|
document.addEventListener("DOMContentLoaded", () => {
|
||
|
document.querySelector("#theme").addEventListener("change", function() {
|
||
|
applyTheme(this.value);
|
||
|
});
|
||
|
});
|
||
|
|
||
|
document.addEventListener("DOMContentLoaded", () => {
|
||
|
const savedTheme = localStorage.getItem("theme") || "auto";
|
||
|
|
||
|
applyTheme(savedTheme);
|
||
|
|
||
|
for (const optionElement of document.querySelectorAll("#theme option")) {
|
||
|
optionElement.selected = savedTheme === optionElement.value;
|
||
|
}
|
||
|
|
||
|
document.querySelector("#theme").addEventListener("change", function () {
|
||
|
localStorage.setItem("theme", this.value);
|
||
|
applyTheme(this.value);
|
||
|
});
|
||
|
});
|
||
|
|