22 lines
751 B
JavaScript
22 lines
751 B
JavaScript
|
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);
|
||
|
});
|
||
|
}
|
||
|
});
|