From c5b8695a8210765c8ae89195328da26c45bd1ffc Mon Sep 17 00:00:00 2001 From: hamster1963 <1410514192@qq.com> Date: Tue, 31 Dec 2024 23:26:25 +0800 Subject: [PATCH] fix: auto scroll --- bun.lockb | Bin 627034 -> 627034 bytes components/Switch.tsx | 24 ++++++++++++++++++++++-- 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/bun.lockb b/bun.lockb index 58cd51b490cbaeb950b5be4431359702d80f172b..4eaae49bb14963464c889b0cb02c2dd31ca1ae29 100755 GIT binary patch delta 72 zcmcb$NbS}lwT2eP7N!>F7M2#)Eo?J68I7jT;$-tF7M2#)Eo?J684ah;;$-t { + const currentTagElement = tagRefs.current[allTag.indexOf(nowTag)]?.current + const container = scrollRef.current + + if (currentTagElement && container) { + const containerRect = container.getBoundingClientRect() + const tagRect = currentTagElement.getBoundingClientRect() + + const scrollLeft = currentTagElement.offsetLeft - (containerRect.width - tagRect.width) / 2 + + container.scrollTo({ + left: Math.max(0, scrollLeft), + behavior: "smooth", + }) + } + }, [nowTag]) return (
onTagChange(tag)} + onClick={() => { + onTagChange(tag) + sessionStorage.setItem("selectedTag", tag) + }} className={cn( "relative cursor-pointer rounded-3xl px-2.5 py-[8px] text-[13px] font-[600]", "transition-all duration-500 ease-in-out text-stone-400 dark:text-stone-500",