-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathscript.js
More file actions
31 lines (27 loc) · 1.1 KB
/
Copy pathscript.js
File metadata and controls
31 lines (27 loc) · 1.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
document.addEventListener('DOMContentLoaded', () => {
// 1. Intersection Observer for content reveals
const observerOptions = {
root: document.querySelector('.scroll-container'),
threshold: 0.6
};
const observer = new IntersectionObserver((entries) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
entry.target.classList.add('active');
const children = entry.target.querySelectorAll('.reveal');
children.forEach((child, index) => {
setTimeout(() => {
child.classList.add('active');
}, index * 100);
});
}
});
}, observerOptions);
const slides = document.querySelectorAll('.slide');
slides.forEach(slide => {
observer.observe(slide);
const headers = slide.querySelectorAll('h1, h2, ul li, .glass-card, .timeline-wrapper');
headers.forEach(el => el.classList.add('reveal'));
});
console.log('Tinkering Lab SPA initialized. Props fixed to corners.');
});