summaryrefslogtreecommitdiff
path: root/packages/frontend/src/scripts/scroll.ts
diff options
context:
space:
mode:
Diffstat (limited to 'packages/frontend/src/scripts/scroll.ts')
-rw-r--r--packages/frontend/src/scripts/scroll.ts9
1 files changed, 7 insertions, 2 deletions
diff --git a/packages/frontend/src/scripts/scroll.ts b/packages/frontend/src/scripts/scroll.ts
index a002f02b5a..7338de62b6 100644
--- a/packages/frontend/src/scripts/scroll.ts
+++ b/packages/frontend/src/scripts/scroll.ts
@@ -1,3 +1,8 @@
+/*
+ * SPDX-FileCopyrightText: syuilo and other misskey contributors
+ * SPDX-License-Identifier: AGPL-3.0-only
+ */
+
type ScrollBehavior = 'auto' | 'smooth' | 'instant';
export function getScrollContainer(el: HTMLElement | null): HTMLElement | null {
@@ -25,7 +30,7 @@ export function getScrollPosition(el: HTMLElement | null): number {
export function onScrollTop(el: HTMLElement, cb: () => unknown, tolerance = 1, once = false) {
// とりあえず評価してみる
- if (isTopVisible(el)) {
+ if (el.isConnected && isTopVisible(el)) {
cb();
if (once) return null;
}
@@ -49,7 +54,7 @@ export function onScrollBottom(el: HTMLElement, cb: () => unknown, tolerance = 1
const container = getScrollContainer(el);
// とりあえず評価してみる
- if (isBottomVisible(el, tolerance, container)) {
+ if (el.isConnected && isBottomVisible(el, tolerance, container)) {
cb();
if (once) return null;
}