EI
visible = scrollY === 0 || prevScrollY > scrollY; невозможно ускорить или сделать более эффективным через цепочку вызовов внутри debounceSize: a a a
EI
visible = scrollY === 0 || prevScrollY > scrollY; невозможно ускорить или сделать более эффективным через цепочку вызовов внутри debounceEI
МТ
visible = scrollY === 0 || prevScrollY > scrollY; невозможно ускорить или сделать более эффективным через цепочку вызовов внутри debounceМТ
EI
МТ
EI
visible = scrollY === 0 || prevScrollY > scrollY;
prevScrollY = scrollY
clearTimeout(timeout);
timeout = setTimeout(() => /* debounced */, 20);
МТ
visible = scrollY === 0 || prevScrollY > scrollY;
prevScrollY = scrollY
clearTimeout(timeout);
timeout = setTimeout(() => /* debounced */, 20);
МТ
EI
<svelte:window on:scroll={handleScroll} bind:scrollY/>A
<svelte:window on:scroll={handleScroll} bind:scrollY/>EI
МТ
node.getBoundingClientRect() во время скролла(используя который также кстати можно вычислить направление скроллинга), и фпс славно полетит на дно =)EI
node.getBoundingClientRect() во время скролла(используя который также кстати можно вычислить направление скроллинга), и фпс славно полетит на дно =)EI
node.getBoundingClientRect() во время скролла(используя который также кстати можно вычислить направление скроллинга), и фпс славно полетит на дно =)on:scroll={handleScroll} ? И там следить на deltaYМТ
on:scroll={handleScroll} ? И там следить на deltaYМТ
EI
let scrollY, prevScrollYbind:scrollYEI
EI