diff --git a/app/assets/javascripts/02-editor.js b/app/assets/javascripts/02-editor.js index 78938408..7e27e269 100644 --- a/app/assets/javascripts/02-editor.js +++ b/app/assets/javascripts/02-editor.js @@ -236,6 +236,14 @@ function cleanContent (contentEl) { } else if (!elementIsBlock(child)) { child.tagName = "P" } + } else if (child.nodeType === Node.TEXT_NODE) { + const wasSelected = sel.getRangeAt(0).intersectsNode(child) + + const el = document.createElement("p") + el.appendChild(child) + contentEl.insertBefore(el, child.nextSibling) + + if (wasSelected) sel.collapse(el, child.data.length) } } } @@ -246,12 +254,6 @@ function cleanContent (contentEl) { * * Wrappea el contenido de un UL o OL en un LI si no lo está */ function fixContent (contentEl) { - if (!contentEl.firstChild) { - const newEl = document.createElement("p") - contentEl.appendChild(newEl) - window.getSelection().collapse(newEl) - } - for (const child of contentEl.childNodes) { if (child.tagName) { if (elementIsParentBlock(child)) {