我在页面突出显示中做了一些,并且发现使用文本选择和添加跨度时最流行的例子是切换到designMode并运行execCommand
How can I highlight the text of the DOM Range object?
关于如何在创建后删除span标记没有跟进。 我看到了一些使用jquery和replaceWith的例子,但没有使用直接的javascript。
答案 0 :(得分:5)
您应该可以执行以下操作:
// Where span is a reference to the span to be replaced
var text = span.textContent || span.innerText;
var node = document.createTextNode(text);
span.parentNode.replaceChild(node, span);
答案 1 :(得分:1)
只需使用innerHTML
的内容(<span>
)创建一个新的文本节点。将<span>
节点替换为其父节点上的replaceChild
:
spanTag.parentNode.replaceChild(document.createTextNode(spanTag.innerHTML), spanTag)