This commit is contained in:
Vanessa 2022-11-16 21:27:51 +08:00
parent ddee980f24
commit 2516d1ff0a

View file

@ -57,6 +57,7 @@ import {countBlockWord} from "../../layout/status";
import {openMobileFileById} from "../../mobile/editor";
import {moveToDown, moveToUp} from "./move";
import {pasteAsPlainText} from "../util/paste";
import {preventScroll} from "../scroll/preventScroll";
export const keydown = (protyle: IProtyle, editorElement: HTMLElement) => {
editorElement.addEventListener("keydown", (event: KeyboardEvent & { target: HTMLElement }) => {
@ -359,6 +360,10 @@ export const keydown = (protyle: IProtyle, editorElement: HTMLElement) => {
const previousElement = getPreviousBlock(startEndElement.endElement);
if (previousElement) {
previousElement.setAttribute("select-end", "true");
if (previousElement.getBoundingClientRect().top <= protyle.contentElement.getBoundingClientRect().top) {
preventScroll(protyle)
previousElement.scrollIntoView(true)
}
}
}
}
@ -392,6 +397,10 @@ export const keydown = (protyle: IProtyle, editorElement: HTMLElement) => {
const nextElement = getNextBlock(startEndElement.endElement);
if (nextElement) {
nextElement.setAttribute("select-end", "true");
if (nextElement.getBoundingClientRect().bottom >= protyle.contentElement.getBoundingClientRect().bottom) {
preventScroll(protyle)
nextElement.scrollIntoView(false)
}
}
}
}