stat / script.js
TDN-M's picture
Update script.js
ee0dfb1 verified
raw
history blame
1.1 kB
// Hiệu ứng cuộn mượt mà khi nhấp vào liên kết (nếu thêm nav sau này)
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
anchor.addEventListener('click', function(e) {
e.preventDefault();
document.querySelector(this.getAttribute('href')).scrollIntoView({
behavior: 'smooth'
});
});
});
// Hiệu ứng xuất hiện khi cuộn
const sections = document.querySelectorAll('section');
const observer = new IntersectionObserver((entries, observer) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
entry.target.classList.add('visible');
observer.unobserve(entry.target);
}
});
}, { threshold: 0.1 });
sections.forEach(section => {
section.classList.add('hidden');
observer.observe(section);
});
// Thêm CSS động qua JS
const style = document.createElement('style');
style.textContent = `
.hidden { opacity: 0; transform: translateY(20px); transition: all 0.5s; }
.visible { opacity: 1; transform: translateY(0); }
`;
document.head.appendChild(style);