Files
6433e0e3-53e0-4db0-abc4-fde…/src/components/navbar/NavbarLayoutFloatingOverlay/useScrollDetection.ts
vitalijmulika 0798d22da7 Initial commit
2026-01-07 12:15:34 +02:00

18 lines
582 B
TypeScript

import { useState, useEffect } from 'react';
import { throttle } from '@/utils/throttle';
export const useScrollDetection = (threshold: number = 50) => {
const [isScrolled, setIsScrolled] = useState(false);
useEffect(() => {
const handleScroll = throttle(() => {
setIsScrolled(window.scrollY > threshold);
}, 100);
handleScroll();
window.addEventListener('scroll', handleScroll, { passive: true });
return () => window.removeEventListener('scroll', handleScroll);
}, [threshold]);
return isScrolled;
};