Fix replace content

This commit is contained in:
morethanwords 2021-04-15 15:02:29 +04:00
parent be1bd0bcde
commit a57599f3a2
7 changed files with 11 additions and 8 deletions

File diff suppressed because one or more lines are too long

Binary file not shown.

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -682,12 +682,15 @@ export function htmlToSpan(html: string) {
export function replaceContent(elem: HTMLElement, node: string | Node) {
// * children.length doesn't count text nodes
if(elem.children.length) {
elem.firstChild.replaceWith(node);
} else if(!elem.firstChild) {
elem.append(node);
const firstChild = elem.firstChild;
if(firstChild) {
if(elem.lastChild === firstChild) {
firstChild.replaceWith(node);
} else {
elem.textContent = '';
elem.append(node);
}
} else {
elem.textContent = '';
elem.append(node);
}
}