CoolFace
Apppublic

Winiry/math-o-s-dark-code-cave

sourceHugging Faceupdated 10mo agoView on Hugging Face
0likes
script.js46 linesDownload Raw Back to root
1// Intersection Observer for section animations2const observer = new IntersectionObserver((entries) => {3    entries.forEach(entry => {4        if (entry.isIntersecting) {5            entry.target.classList.add('visible');6        }7    });8}, {9    threshold: 0.110});11 12document.querySelectorAll('section').forEach(section => {13    observer.observe(section);14});15 16// Smooth scroll for anchor links17document.querySelectorAll('a[href^="#"]').forEach(anchor => {18    anchor.addEventListener('click', function (e) {19        e.preventDefault();20        21        const targetId = this.getAttribute('href');22        if (targetId === '#') return;23        24        const targetElement = document.querySelector(targetId);25        if (targetElement) {26            window.scrollTo({27                top: targetElement.offsetTop - 80,28                behavior: 'smooth'29            });30        }31    });32});33 34// Dark mode toggle (if needed in future)35const darkModeToggle = document.getElementById('darkModeToggle');36if (darkModeToggle) {37    darkModeToggle.addEventListener('click', () => {38        document.documentElement.classList.toggle('dark');39        localStorage.setItem('darkMode', document.documentElement.classList.contains('dark'));40    });41}42 43// Check for saved dark mode preference44if (localStorage.getItem('darkMode') === 'false') {45    document.documentElement.classList.remove('dark');46}