15 lines
502 B
JavaScript
15 lines
502 B
JavaScript
|
// Set darkmode
|
||
|
document.getElementById('mode').addEventListener('click', () => {
|
||
|
|
||
|
document.body.classList.toggle('dark');
|
||
|
localStorage.setItem('theme', document.body.classList.contains('dark') ? 'dark' : 'light');
|
||
|
|
||
|
});
|
||
|
|
||
|
// enforce local storage setting but also fallback to user-agent preferences
|
||
|
if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia("(prefers-color-scheme: dark)").matches)) {
|
||
|
|
||
|
document.body.classList.add('dark');
|
||
|
|
||
|
}
|