家谱现有接口调试50%
This commit is contained in:
@@ -0,0 +1,39 @@
|
||||
(function () {
|
||||
// 只在精确指针设备上启用微动效,触屏和减少动效偏好下保持静态。
|
||||
const finePointer = window.matchMedia("(hover: hover) and (pointer: fine)").matches;
|
||||
const reduceMotion = window.matchMedia("(prefers-reduced-motion: reduce)").matches;
|
||||
|
||||
if (!finePointer || reduceMotion) return;
|
||||
|
||||
document.querySelectorAll(".tilt-card").forEach((card) => {
|
||||
// 卡片倾斜角度通过 CSS 变量传递,具体视觉效果仍由 CSS 控制。
|
||||
card.addEventListener("pointermove", (event) => {
|
||||
const rect = card.getBoundingClientRect();
|
||||
const px = (event.clientX - rect.left) / rect.width - 0.5;
|
||||
const py = (event.clientY - rect.top) / rect.height - 0.5;
|
||||
card.style.setProperty("--tilt-y", `${px * 5}deg`);
|
||||
card.style.setProperty("--tilt-x", `${py * -5}deg`);
|
||||
});
|
||||
|
||||
card.addEventListener("pointerleave", () => {
|
||||
card.style.setProperty("--tilt-y", "0deg");
|
||||
card.style.setProperty("--tilt-x", "0deg");
|
||||
});
|
||||
});
|
||||
|
||||
document.querySelectorAll(".magnetic").forEach((item) => {
|
||||
// 品牌 logo 不做磁吸,避免导航视觉跳动。
|
||||
if (item.classList.contains("brand") || item.querySelector(".brand-logo")) return;
|
||||
|
||||
item.addEventListener("pointermove", (event) => {
|
||||
const rect = item.getBoundingClientRect();
|
||||
const x = event.clientX - rect.left - rect.width / 2;
|
||||
const y = event.clientY - rect.top - rect.height / 2;
|
||||
item.style.transform = `translate(${x * 0.08}px, ${y * 0.08}px)`;
|
||||
});
|
||||
|
||||
item.addEventListener("pointerleave", () => {
|
||||
item.style.transform = "";
|
||||
});
|
||||
});
|
||||
})();
|
||||
Reference in New Issue
Block a user