From 5d736483ec80e1071b2f3eab4fcd64aac5856271 Mon Sep 17 00:00:00 2001 From: Vanessa Date: Mon, 7 Nov 2022 17:17:14 +0800 Subject: [PATCH] :art: fix https://github.com/siyuan-note/siyuan/issues/6505 --- app/src/mobile/util/MobileBackFoward.ts | 2 +- app/src/protyle/markdown/blockRender.ts | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/app/src/mobile/util/MobileBackFoward.ts b/app/src/mobile/util/MobileBackFoward.ts index 0224abe95..352a68d0b 100644 --- a/app/src/mobile/util/MobileBackFoward.ts +++ b/app/src/mobile/util/MobileBackFoward.ts @@ -68,7 +68,7 @@ const focusStack = (backStack: IBackStack) => { protyle.wysiwyg.element.innerHTML = getResponse.data.content; processRender(protyle.wysiwyg.element); highlightRender(protyle.wysiwyg.element); - blockRender(protyle, protyle.wysiwyg.element); + blockRender(protyle, protyle.wysiwyg.element, backStack.scrollTop); if (getResponse.data.isSyncing) { disabledForeverProtyle(protyle); } else { diff --git a/app/src/protyle/markdown/blockRender.ts b/app/src/protyle/markdown/blockRender.ts index f6165252f..ab690ed52 100644 --- a/app/src/protyle/markdown/blockRender.ts +++ b/app/src/protyle/markdown/blockRender.ts @@ -5,7 +5,7 @@ import {highlightRender} from "./highlightRender"; import {Constants} from "../../constants"; import {genBreadcrumb} from "../wysiwyg/renderBacklink"; -export const blockRender = (protyle: IProtyle, element: Element) => { +export const blockRender = (protyle: IProtyle, element: Element, top?: number) => { let blockElements: Element[] = []; if (element.getAttribute("data-type") === "NodeBlockQueryEmbed") { // 编辑器内代码块编辑渲染 @@ -64,6 +64,10 @@ export const blockRender = (protyle: IProtyle, element: Element) => { processRender(item); highlightRender(item); + if (top) { + // 前进后退定位 https://ld246.com/article/1667652729995 + protyle.contentElement.scrollTop = top; + } let maxDeep = 0; let deepEmbedElement: false | HTMLElement = item; while (maxDeep < 4 && deepEmbedElement) {