mirror of
https://github.com/siyuan-note/siyuan.git
synced 2026-01-02 23:08:49 +01:00
This commit is contained in:
parent
cd3da736db
commit
772dee2fc7
3 changed files with 9 additions and 2 deletions
|
|
@ -116,6 +116,9 @@ export const getEditorRange = (element: Element) => {
|
|||
targetElement = getContenteditableElement(element);
|
||||
if (!targetElement) {
|
||||
targetElement = element;
|
||||
} else if (targetElement.tagName === "TABLE") {
|
||||
// 文档中开头为表格,获取错误 https://ld246.com/article/1663408335459?r=88250
|
||||
targetElement = targetElement.querySelector("th") || element.querySelector("td");
|
||||
}
|
||||
}
|
||||
range = targetElement.ownerDocument.createRange();
|
||||
|
|
|
|||
|
|
@ -78,7 +78,7 @@ export const getNoContainerElement = (element: Element) => {
|
|||
};
|
||||
|
||||
export const getContenteditableElement = (element: Element) => {
|
||||
if (!element || element.getAttribute("contenteditable") === "true") {
|
||||
if (!element || (element.getAttribute("contenteditable") === "true") && !element.classList.contains("protyle-wysiwyg")) {
|
||||
return element;
|
||||
}
|
||||
return element.querySelector('[contenteditable="true"]');
|
||||
|
|
|
|||
|
|
@ -1727,7 +1727,7 @@ export class WYSIWYG {
|
|||
const emptyEditElement = getContenteditableElement(emptyElement) as HTMLInputElement;
|
||||
range.selectNodeContents(emptyEditElement);
|
||||
range.collapse(true);
|
||||
emptyEditElement.focus();
|
||||
focusByRange(range)
|
||||
} else if (lastEditElement) {
|
||||
range.selectNodeContents(lastEditElement);
|
||||
range.collapse(false);
|
||||
|
|
@ -1746,6 +1746,10 @@ export class WYSIWYG {
|
|||
if (!protyle.wysiwyg.element.querySelector(".protyle-wysiwyg--select")) {
|
||||
countSelectWord(newRange);
|
||||
}
|
||||
if (getSelection().rangeCount === 0) {
|
||||
// https://github.com/siyuan-note/siyuan/issues/5901
|
||||
focusByRange(newRange)
|
||||
}
|
||||
/// #if !MOBILE
|
||||
pushBack(protyle, newRange);
|
||||
/// #endif
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue