This commit is contained in:
Vanessa 2023-10-06 22:46:26 +08:00
parent 872a409ec4
commit bf4c4e6a4f

View file

@ -18,8 +18,9 @@ export const insertHTML = (html: string, protyle: IProtyle, isBlock = false,
}
const range = useProtyleRange ? protyle.toolbar.range : getEditorRange(protyle.wysiwyg.element);
fixTableRange(range);
let tableInlineHTML;
if (hasClosestByAttribute(range.startContainer, "data-type", "NodeTable") && !isBlock) {
html = protyle.lute.BlockDOM2InlineBlockDOM(html);
tableInlineHTML = protyle.lute.BlockDOM2InlineBlockDOM(html);
}
let blockElement = hasClosestBlock(range.startContainer) as Element;
if (!blockElement) {
@ -102,7 +103,8 @@ export const insertHTML = (html: string, protyle: IProtyle, isBlock = false,
}
const tempElement = document.createElement("template");
// 需要再 spin 一次 https://github.com/siyuan-note/siyuan/issues/7118
tempElement.innerHTML = protyle.lute.SpinBlockDOM(html) ||
tempElement.innerHTML = tableInlineHTML // 在 table 中插入需要使用转换好的行内元素 https://github.com/siyuan-note/siyuan/issues/9358
|| protyle.lute.SpinBlockDOM(html) ||
html; // 空格会被 Spin 不再,需要使用原文
const editableElement = getContenteditableElement(blockElement);
// 使用 lute 方法会添加 p 元素,只有一个 p 元素或者只有一个字符串或者为 <u>b</u> 时的时候只拷贝内部