webbed-site/js/theme.js

22 lines
751 B
JavaScript
Raw Permalink Normal View History

window.addEventListener('load', function() {
var prefersDarkScheme = window.matchMedia !== undefined && window.matchMedia("(prefers-color-scheme: dark)").matches;
var DEFAULT_THEME = prefersDarkScheme ? 'moon' : 'peach';
var THEMES = ["moon", "peach", "sakura", "honey"];
function setTheme(theme) {
if (THEMES.indexOf(theme) < 0) theme = DEFAULT_THEME;
document.getElementById('switcher-id').href = '/css/' + theme + '.css';
localStorage.setItem('style', theme);
}
var savedTheme = localStorage.getItem('style');
setTheme(savedTheme || DEFAULT_THEME);
const switches = document.getElementsByClassName('switch');
for (const el of switches) {
console.log(el);
el.addEventListener('click', () => {
setTheme(el.dataset.theme);
});
}
});