From dd3ce101a643142e33f823f09d9f2886270b36cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=9B=AE=E6=A3=83?= Date: Fri, 7 Mar 2025 15:13:20 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=8E=A8=20=E9=87=8D=E6=9E=84=E6=BB=9A?= =?UTF-8?q?=E5=8A=A8=E9=AB=98=E5=BA=A6=E8=AE=A1=E7=AE=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/viewPost/vp-overlay-collection.vue | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/components/viewPost/vp-overlay-collection.vue b/src/components/viewPost/vp-overlay-collection.vue index cb85b3ab..bf8858b7 100644 --- a/src/components/viewPost/vp-overlay-collection.vue +++ b/src/components/viewPost/vp-overlay-collection.vue @@ -76,11 +76,11 @@ watch( async () => { if (visible.value && posts.value.length > 0) { await nextTick(); - if (postListEl.value === null || props.collection.total < 5) return; - let topNum: number; - if (props.collection.total - props.collection.cur < 3) topNum = props.collection.total; - else topNum = props.collection.cur - 3; - postListEl.value.scrollTo({ top: topNum * 87, behavior: "smooth" }); + if (postListEl.value === null) return; + const selectedEl = document.querySelector(".tpoc-item.selected"); + if (selectedEl === null) return; + const scrollHeight = selectedEl.offsetTop - postListEl.value.offsetTop; + postListEl.value.scrollTo({ top: scrollHeight, behavior: "smooth" }); } }, );