From 1b1bdcc9ea2feed6f56e03f75c8f0afa4d937d5b Mon Sep 17 00:00:00 2001 From: Vanessa Date: Mon, 1 Jan 2024 11:51:54 +0800 Subject: [PATCH] :art: https://github.com/siyuan-note/siyuan/issues/10029 --- app/src/menus/protyle.ts | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/app/src/menus/protyle.ts b/app/src/menus/protyle.ts index 8ae9b4fb2..c21ccf546 100644 --- a/app/src/menus/protyle.ts +++ b/app/src/menus/protyle.ts @@ -1278,15 +1278,13 @@ export const linkMenu = (protyle: IProtyle, linkElement: HTMLElement, focusText } else { linkElement.removeAttribute("data-title"); } - if (inputElements[0].value) { + if (linkElement.getAttribute("data-type").indexOf("a") > -1) { linkElement.setAttribute("data-href", Lute.EscapeHTMLStr(inputElements[0].value.replace(/\n|\r\n|\r|\u2028|\u2029/g, ""))); - } else if (linkElement.getAttribute("data-type").indexOf("a") === -1) { + } else { linkElement.removeAttribute("data-href"); } const currentRange = getSelection().rangeCount === 0 ? undefined : getSelection().getRangeAt(0); - if (linkElement.textContent === "" || linkElement.textContent === Constants.ZWSP) { - removeInlineType(linkElement, "a", (currentRange && !protyle.element.contains(currentRange.startContainer)) ? protyle.toolbar.range : undefined); - } else if (currentRange && !protyle.element.contains(currentRange.startContainer)) { + if (currentRange && !protyle.element.contains(currentRange.startContainer)) { protyle.toolbar.range.selectNodeContents(linkElement); protyle.toolbar.range.collapse(false); focusByRange(protyle.toolbar.range);