项目文件夹

文件

35 行
1.0 KiB
JavaScript

document.addEventListener("DOMContentLoaded", () => {
// 平滑滚动
document.querySelectorAll('a[href^="#"]').forEach((link) => {
link.addEventListener("click", (e) => {
const id = link.getAttribute("href").slice(1);
const target = document.getElementById(id);
if (target) {
e.preventDefault();
target.scrollIntoView({ behavior: "smooth", block: "start" });
history.replaceState(null, "", `#${id}`);
}
});
});
// 滚动渐入动画
const observer = new IntersectionObserver(
(entries) => {
entries.forEach((entry) => {
if (entry.isIntersecting) {
entry.target.style.opacity = "1";
entry.target.style.transform = "translateY(0)";
}
});
},
{ threshold: 0.1 }
);
document.querySelectorAll(".card, .tl-item, .app-item, .future-card").forEach((el) => {
el.style.opacity = "0";
el.style.transform = "translateY(20px)";
el.style.transition = "opacity 0.6s ease, transform 0.6s ease";
observer.observe(el);
});
});