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, prevScrollY
bind:scrollY
EI
EI