diff --git a/src/app/page.tsx b/src/app/page.tsx index 2a10a68..08e1df0 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -23,11 +23,23 @@ export default function Home() { const [isHovered, setIsHovered] = useState(false); useEffect(() => { + // 添加防抖处理,减少状态更新频率 + let timeoutId: NodeJS.Timeout; + const handleMouseMove = (e: MouseEvent) => { - setMousePosition({ x: e.clientX, y: e.clientY }); + // 使用防抖,每16ms更新一次(约60fps) + clearTimeout(timeoutId); + timeoutId = setTimeout(() => { + setMousePosition({ x: e.clientX, y: e.clientY }); + }, 16); }; + window.addEventListener('mousemove', handleMouseMove); - return () => window.removeEventListener('mousemove', handleMouseMove); + + return () => { + window.removeEventListener('mousemove', handleMouseMove); + clearTimeout(timeoutId); + }; }, []); const features = [ @@ -71,11 +83,10 @@ export default function Home() {